From d967edeee8fd6af6d40bffe53cceed1bd053d7ad Mon Sep 17 00:00:00 2001 From: Jorin Mejia Date: Sat, 18 Dec 2021 07:12:17 -0800 Subject: [PATCH] Microsoft.Cdn : 2021-06-01 API (#16868) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Adds base for updating Microsoft.Cdn from version stable/2020-09-01 to version 2021-06-01 * Updates readme * Updates API version in new specs and examples * Update CODEOWNERS file (#1) * update CODEOWNERS file * update CODEOWNERS file * add new cdn code owner Co-authored-by: Jorin Mejia * add forwardingProtocol to OriginGroupOverride (#2) * Cache Behavior and Case Transform (#3) * add forwardingProtocol to OriginGroupOverride * added new cache behavior attributes and case transform enum values * update cache behavior * Swagger changes for enabling certname check and onboarding prevalidated customdomains * Fixing formatting - Swagger changes for enabling certname check and onboarding prevalidated customdomains * Correct input and output types of checkHostNameAvailability API * Set CA and SAN to readonly * Update ValidateSecretInput to include SecretVersion * Nit fix grammar * Swagger changes to move originResponseTimeoutSeconds property from afdendpoint to profile level * Remove redundant fields and mark certificate properties readonly * Reoganize parameters and update descriptions * Update examples * Fix typos and expand abbhreviations * Fix more typo * Update odatatype (#10) * Update odatatype * Update odatatype * Update typeName * camel casing typeName Co-authored-by: Chenglong Liu * Change country to countryOrRegion to avoid political concern according to CELA (#12) * Change country to countryOrRegion to avoid political concern according to CELA * Minor change to keep consistence Co-authored-by: Bo Zhang * Yunhe/cdn 2021 06 01 (#8) * add forwardingProtocol to OriginGroupOverride * added new cache behavior attributes and case transform enum values * update cache behavior * update route and route configuration override rule swagger definition * update * made changes to route and rule to remove EnableCache filed. To disable cache, leave CacheConfiguration to null. * add cache duration to route * update routeConfigOverride action * update route and action * update action swagger * update swagger spec * update examples * update comments * updated examples * server variable (#11) * wip server variable * server-variable udpates * server port transform * socket address * update server variable * resolve comments * revert unwanted change * Revert "server variable (#11)" (#16) This reverts commit d6eddf6a201df30dc2abe23e7083c4c158a8fb83. * [Azure CDN] Add missing customHttpsParameters field in CustomDomainProperties (#15) Co-authored-by: Bo Zhang * Swagger changes for adding secret type AzureFirstpartyManaged certifi… (#13) * Swagger changes for adding secret type AzureFirstpartyManaged certificate * Updating description for AzureFirstPartyManagedCertificate secret type * Updating description for AzureFirstPartyManagedCertificate secret type * resolving merge conflict * resolving merge conflict Co-authored-by: SINADELL * Fix multiple S360 correctness issues related to CDN (#17) * Fix multiple S360 corretness issues related to CDN * Fix privateEndpointStatus location issue Co-authored-by: Bo Zhang * Product Backlog Item 12546459: [AFDX][CDN][RP][SWAGGER] refreshValidationToken API for swagger and RP inconsistency * Product Backlog Item 12546473: [AFDX][CDN][RP][SWAGGER] domainValidationState of AFDDomainProperties swagger and RP inconsistency * Make description more readible * added transform values to all api versions (#19) * Product Backlog Item 12546377: [AFDX][CDN][RP][SWAGGER] Add CustomDomains property definition end EndpointProperties per swagger issue? (#20) * Fixing operations api swagger (#21) Co-authored-by: SINADELL * Change route and security policy to use ActivatedResourceReference for domains associated Routes and security policies can know if their associated domains are validated or not by using ActivatedResourceReference, which contains a property to indicate the domain validation state. * Add ActivatedResourceReference support Adding support to have a resource reference with a property to indicate whether the resource is active. To start with, this would indicate whether a domain referenced is active or inactive, but it can also be used for other purposes in the future. * 2021-06-01 ARM & SDK Fixes (#23) * fix incompatiable names * Revert "fix incompatiable names" This reverts commit 9a2bf2d0512338fdf7bc97bbaf2a4fcdd5a2ade5. * change CacheConfiguration naming to AfdCacheConfiguration * AfdCacheConfiguration -> AfdRouteCacheConfiguration, fix type for SDK issue * add format field to integer types * Add format field to integer types * IsCompressionEnabled -> isCompressionEnabled * responseBasedAFDOriginErrorDetectionSettings -> responseBasedAfdOriginErrorDetectionSettings * use camel casing for resource type * Add default response to delete operation * Update x-ms-name MatchVariable -> WafMatchVariable * Update Error Response to conform to spec * Update Error Response with additional fields * Update reference to error field in ErrorResponse * Fix semantics, validations, typos * Use camel casing and add 200 response code * Add remaining 200 response for delete and conform to operation spec * Add parent resource name in child resource Co-authored-by: Jorin Mejia * Fix merge conflicts (#24) Co-authored-by: Jorin Mejia * fix bug (#25) * Update codeowners, add read only field, add profileName to SecurityPolicyProperties * Merge Main Branch from Azure REST Specs (#26) * [PowerBIDedicated] Elaborate description and examples on capacity mode (#16131) * Elaborate description and exampleson capacity mode * PR fixes * Revert changes for 2017 version * update api scenario documentation (#16086) * add operation step * fix schema * restore OpTest * add cleanUpSteps & remove type * use draft-07 schema * refine propertyNames * add description * remove merge * fix copy/move * use property name * variable type * restore plain style * define Example and file reference in v1.1 * remove raw Example support * fix * rename to API scenario * restore entry * fix ref * swagger ase 2021 06 01 stable preview release (#16120) * Initial commit for 2021-06-01 and 2021-06-01-preview Initial commit for 2021-06-01 and 2021-06-01-preview * new version update * review comments changes. review comments changes. * [Quantum] Add job cost estimate (#16339) * copy existin api-version * update api-version ref * new feature * Revert "[Quantum] Add job cost estimate (#16339)" (#16340) This reverts commit 4df4b843dd2692aadd416dd9ede5979610c08be6. * Update description for ENUM_MISMATCH error code. (#16351) * [EdgeOrder] Update 2020-12-01-preview swagger with swagger correctness fix and other changes (#15962) * new api changes (#1) * new api changes * referer url change * EdgeOrder 2020-12-01-preview Swagger changes (#5) * readme changes * Swagger refresh and update examples * Change examples as per oav validations * Minor swagger modifications * Minor spacing adjustments * Set ModelAsString to true for enums and modify examples * Fix swagger lint validation error * Modify readme and examples * Modify readme.go.md * Update swagger * Minor prettier fix * Change python package version in readme * Fix spell check error * chanegs to enable forward and reverse shipping details in get order item call using odata filter * Swagger correctness fix with other changes (#25) * Swagger correctness fix with other changes * Return api field additions * Change expand description for listOrderItem calls Co-authored-by: Vaishnavi Janardhan * Fix semantic validation error in doubleEncryptionStatus (#30) * Mark parameters of shipping details as readonly (#35) * Additional properties swagger correctness fix (#43) Co-authored-by: sashanm <54701252+sashanm@users.noreply.github.com> Co-authored-by: t-vjanardhan <77781522+t-vjanardhan@users.noreply.github.com> Co-authored-by: Nidhi Jain Co-authored-by: nija-dev <67132984+nija-dev@users.noreply.github.com> Co-authored-by: Vaishnavi Janardhan * Update readme.md (#16349) * [Hub Generated] Review request for VideoAnalyzer.Edge to add version preview/1.1.0 (#16182) * Adds base for updating VideoAnalyzer.Edge from version preview/1.0.0 to version 1.1.0 * Updates readme * Updates API version in new specs and examples * Update AVA Edge Swagger to 1.1 release * fix a linter issue. * fix spelling mistakes * update the api version * update swagger with new changes * fix a bug in one of the ava properties. (#16365) * Swagger for Form Recognizer 2021-09-30-preview. (#16234) * Swagger for Form Recognizer 2021-09-30-preview. * Fix styling issues. * Fix styling. * Remove yml version. * Update Speaker Verification URL (#16348) * Update Speaker Identification URL (#16347) * Creator v1 Deprecated - Delete Swagger Docs (#16225) * Creator v1 Deprecated - Delete Swagger Docs Creator v1 Deprecated as of Sept 6 2021 - Delete Swagger Docs * Creator v1 Deprecated - Delete Swagger Docs Creator v1 Deprecated as of Sept 6 2021 - Delete Swagger Docs * [Hub Generated] Review request for Microsoft.ContainerInstance to add version stable/2021-09-01 (#16247) * Adds base for updating Microsoft.ContainerInstance from version stable/2021-07-01 to version 2021-09-01 * Updates readme * Updates API version in new specs and examples * Adding zones property to resource * Add zones property to relavent examples * Running prettier on modified examples * Adding x-ms-secret to password in responses * Changing parameters to use common types * Reverting changes since they introduced validation errors * Prettier check * Add managedIdentityResourceId to EventHubConnectionProperties (#16358) Co-authored-by: Amit Elran * Adding error responses (#16360) * [KubernetesConfiguration] Release 2021-11-01-preview with FluxConfigurations (#15999) * Adds base for updating Microsoft.KubernetesConfiguration from version stable/2021-03-01 to version 2021-10-01-preview * Updates readme * Updates API version in new specs and examples * Reference common definitions * Add fluxConfiguration to initial commit * Update readmes to new version * Add 409 conflict to scc * Update example api-versions * Add path example * Run prettier * Update dependsOn object body * Update readmes with 2021-09-01 * Change to lastSourceSyncedCommitID * Change to 2021-11-01-previe * [ACR] [New Api Version] add 2021-08-01-preview (#15990) * Initial commit for comparison with previous release * Add new swagger 2021-08-01-preview and examples * Swagger changes for Dataflow flowlets (#16251) * Swagger changes for Dataflow flowlets * Fix reference errors * Fix Lint checks * Separate changes for ADF and Synapse * Address Review Comment * Swagger changes for Synapse flowlets (#16335) * Swagger changes for Synapse flowlets * Add Flowlet to custom words * Address comments * Remove value attribute from certificate object (#15684) * Remove value attribute from certificate object * Fix prettier errors * Adding required property to some of the parameters we initially missed. (#16311) * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Adding required property to some of the parameters we initially missed. * Added new service versions for storage (#16298) * Added new service versions for storage * working on readmes * update * [Microsoft.HybridConnectivity] Promote 2021-07-08-privatepreview to 2021-10-06-preview (PublicPreview) (#16301) * Copy from 2021-07-08-privatepreview api from private repo * Promote 2021-07-08-privatepreview to 2021-10-06-preview * add expiresin custom word for linter fix * fix sdk generation failures * Add batch tag 10/14 (#16393) * add batch tag 10/14 * fix * revert the default tag change (#16398) * [Azure Maps] Timezone: Swagger improvement for SDK generation [Hub Generated] (#16057) * Rename with `x-ms-client-name` * Add extensible enum for timezone accept language * Rename operationId to have better method meaning Add x-ms-client-name for better explaining * Updated description for HasZone1970Location property * Removed Enum in model class name * Better naming for TimeTransitions * Updated x-ms-examples to be more friendly * Update Descriptions * Update method name * Update coordinates with collectionFormat csv * Modified sunrise, sunset type * Update wording for hasZone1970Location description * Use LatLongPair as reference * Modify exists definitions 1. Combined definitions with same structures into TimezoneResult, TimezoneId, ReferenceTime. * Update Examples to fix Model Validation * Rename to Timezone to be consistent * Update description for hasZone1970Location * Minor updates for name, type * Modified property to uppercase to match exmaples * Changed back to using RepresentativePoint Co-authored-by: Alex Tsao * Update to remove default value for enum RouteType (#16343) * [Synapse] - Add x-nullable:true for folder property (#16237) Co-authored-by: Dongwei Wang * Update readme.python.md (#16400) * Dev containerservice microsoft.container service 2021 09 01 (#16215) * Adds base for updating Microsoft.ContainerService from version stable/2021-08-01 to version 2021-09-01 * Updates readme * Updates API version in new specs and examples * Add gmsaProfile in WindowsProfile for AKS (#15976) * Add gmsaProfile in WindowsProfile for AKS * fix spell errors * Fix lint issue * Update readme.md for AKS 2021-09-01 * Expose a few more snapshot properties in 2021-09-01 swagger to match 2021-09-01 API (#16082) * Expose a few more snapshot properties in 2021-09-01 swagger to match 2021-09-01 RP API * Expose a few more snapshot properties in 2021-09-01 swagger to match 2021-09-01 RP API Co-authored-by: Charlie Li * Agent pool start/stop (#16105) * added examples for agentpool start/stop * fixed code styling * added 201 response code in examples * added 201 response code object * added missing parameter * updated description for power state and added title * added power state to request body properties * Update specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-09-01/managedClusters.json Co-authored-by: Matthew Christopher Co-authored-by: Matthew Christopher Co-authored-by: Charlie Li <39974812+chengliangli0918@users.noreply.github.com> Co-authored-by: Charlie Li Co-authored-by: rsamigullin <89222124+rsamigullin@users.noreply.github.com> Co-authored-by: Matthew Christopher * PR to make swagger changes for new event grid public SDK release (#16309) * create baseline commit * Add all the changes for new public SDK release * fix the version * fixing prettier check issues * address pr comments * fix arm version in readme * Add extra line * fix lintdiff issue * Adding suppression and fixing sdk readme * fix issues with go sdk path * fix a missing required and a description (#16421) * EventHub : New API version 2021-11-01 (#16363) * base commit for new api version 2021-11-01 * new api version 2021-11-01 changes * CI fixes * CI fixes * fix for Python SDK * added common def v2 * avocado fix * updated common types * update to address S360 * S360 fix for DisasterRecoveryConfigs * Revert "S360 fix for DisasterRecoveryConfigs" This reverts commit 2476975abd304ee89f1382ceaee280ad3a711e15. * Added SchemaRegistry API * CI fixes - Schemagroup * corrected Schemagroup group properties * reverted the proxyresource location change * Revert "reverted the proxyresource location change" This reverts commit ac79e8a163198742f32adfdc40cc11aa2e039e90. * addresing S360 swagger correctness fro operations and capture * updated description for datalake in capture * subscription format to uuid Co-authored-by: Damodar Avadhani Co-authored-by: v-ajnava * databricks: updating the Tags to be consistent (#16422) The other resources within this Swagger use the applicable Resource name however the Private Link resources use GET, DELETE and PUT - this fixes that so that these are consistent. * Fix Swagger correctness bugs. (#16280) * Created new API version for Monitor Action Groups (#16107) * Updated error response for Action Groups API * spacing * added missing fields to Action Group Resource spec * Added missing fields for action group resource in older version * Updated "resource" name * Removed changes to errorResponse * Removed errorObject * format * Updated required and default fields in Action groups spec * Update default value to boolean Co-authored-by: kai ru <69238381+kairu-ms@users.noreply.github.com> * changes default value type to boolean * undo webhook receiver changes * Created new API version for action groups * Added event hub Receiver to Action groups spec * Updated readme.md for Monitor * Initial checkin for Post and Get test notification apis * Change to completed * Fix some errors * Fix a couple more issues * add x-ms-long-running-operation-options * Context fix * Context * Context * Context * revert unwanted changes since we don't own these * update API version in actionGroups json * update API version in action groups examples * Fix for Swagger PrettierCheck failures * Fix the description of the RG name para * Remove the dupe resourcegroupname para * Another attempt to fix the description * PR comments * fix json format * Fix json * Lets revert the resource descrilption * Fix autorest exception and suppress Lint failures for error response schema * Fix for prettier check * Add providers * Used common types for definitions and parameters * fix lint errors for incompatible parameters * Revert Resource definition update to resolve Lint errors * Revert package tag to fix build break * Update API reference in latest package * PR comment * fix build break because didn't remove the createdBy from the sample * PR comments * Fix typo * Validation errors * Fix errors * Fix errors * Fix style * Change api name * Fix errors * Change the uri * Change the api name Co-authored-by: Ritwik Rajendra Co-authored-by: kai ru <69238381+kairu-ms@users.noreply.github.com> Co-authored-by: Thomas Pham * Removed OnvifDeviceGetRequestBody and OnVifDeviceDiscoverRequestBody (#16371) * Removed OnvifDeviceGetRequestBody and OnVifDeviceDiscoverRequestBody * adding required to discoverduration * removing assetsink * making discoveryDuration optional * Add x-ms-pageable to AccessControl List operations (#16416) * Add x-ms-pageable to AccessControl list operations * remove x-ms-pageable from roleDefinitions List operations * Adding back category level samples (#16389) * Adding back category level samples Adding back category level samples * Adding reference to newly added sample files Adding reference to newly added sample files * Tries to fix prettier violations * Remove location field for sub/management group level * Tries to fix prettier by converting tab to spaces * Add track2 batch 4 mysql-->cognitiveservices (#16431) * Add track2 batch 4 mysql-->cognitiveservices * resourcehealth-->sqlvirtualmachine * Fix AVA 2021-11-01 example files (#16432) * fix examples * fix prettier checks * Api Management 2021-08-01 Stable API-VERSION (#16353) * Adds base for updating Microsoft.ApiManagement from version preview/2021-04-01-preview to version 2021-08-01 * Updates readme * Updates API version in new specs and examples * [Azure Maps] Route: Swagger improvement for SDK generation [Hub Generated] (#16193) * Route: Rename parameter/client names * Route: Rename request body names * Route: Model a few objects as enum * Route: rename magnitudeOfDelay * Route: update startPointIndex/endPointIndex docstrings * Route: departureTime/arrivalTime to date-time * Route: Fix name in typescript.md * Route: modify docstrings for firstInstructionIndex/lastInstructionIndex * Route: rename turnAngleInDecimalDegrees * Route: Add docstrings for RouteSection/RouteLeg * Route: rename report object * Route: add friendly x-ms-examples key name * Route: rearrange definitions for better review * Route: remove language reference in hyperlink * Route: Remove repeated descriptions of batch API * Changed model name RouteDirectionsSummary to RouteSummary * Rename to RouteRangeResponse * Add max/min values for efficiency * Name changing with x-ms-client-name * Minor update * Route: naming fix * renamed all kWh to KwH * Route: add default values * Route: Fix wrong name * Route: Change response type name * Updated name and descriptions for route attributes * Remote language in URL * Route: definition name changed for type name * Route: keep the operations for maintaining SDK consistencies * Route: Change response object names * Route: Fix parameter type * Common: Add more definitions for better client type name * Common: Add description for query parameter * Route: Just rename RouteSummary Definition * Common: Redo the naming for batchItems * Route: add names for x-ms-enum * Route: change all floats to doubles (verified in backend) * Route: use collectionFormat for route range api * Route: rename operationIds to remove Post wording * Modified two method names * Route: update vehicleCommericial's client name * Route: update description/client name for carTrain Co-authored-by: Alex Tsao Co-authored-by: Daniel Rocha * [Azure Maps] Weather: Swagger improvement for SDK generation [Hub Generated] (#16148) * Modified AirQuality * Modified AirDetails * renaming variables for Current Condition * 1. Rename to model to WeatherValue 2. Renamed to IconCode definition * Rename properties to description(s) for consistency * Rename model to weatherValueRange * Renamed to Forecast for better self explaining * Better naming/self explaining for values * Update name fpr dbz * Add enum for UnitType, PrecipitationType, IconCode * Updated example files * Fix CI errors 1. Add new word to avoid error checks failing 2. Updated with "x-ms-client-name" to fix CI errors * Update according to review feedbacks 1. Removed duplicate enum attributes 2. Updated descriptions * Update IconCode * Update x-ms-exmaple for better description * Update Enum * add name for enum * Update according to feedback 1. Update all `query` to collectionFormat 2. Set `readOnly=true` for all response 3. Create PastHoursTemperature model for opimization * Update name Co-authored-by: Alex Tsao * [Hub Generated] Review request for Microsoft.Marketplace to add version stable/2021-10-01 (This is internal data plane service inside Microsoft.Marketplace RP) (#16306) * New Swagger Spec File * New Swagger Example Spec File * New Readme Config File * first commit * fix * fix * examples * fix * words * fix * spell * pretty * fix * pretty * fix * comments * spelling * Fix check access response (#16428) * fix check access response * Add DefinitionsPropertiesNamesCamelCase suppression role Co-authored-by: Prince Gupta * Move QuestionAnswering 2021-07-15-preview to main (#16411) * move questionAnswering 2021-07-15-preview to main * update version in examples * [Hub Generated] Review request for Microsoft.KeyVault to add version preview/2021-06-01-preview (#16399) * Bypass incompatible responses * Add missing path * Add version info * Removing undesired 404 * add "x-ms-secret": true to secret field (#16436) * add "x-ms-secret": true to secret field * remove breaking change prop * Update example Co-authored-by: Nan Jiang * Add missing Opt-in APIs S360 (#16362) * add missing APIs S360 * fix json validation error * revert casing change * fix validation errors * run prettier * [Hub Generated] Review request for Microsoft.AppPlatform to add version preview/2021-09-01-preview (#16149) * Adds base for updating Microsoft.AppPlatform from version preview/2021-06-01-preview to version 2021-09-01-preview * Updates readme * Updates API version in new specs and examples * Add new changes for 2021-09-01-preview * Fix some validation errors * Use collection for loadedCertificates * Fix typo * Update readme for new api version autorest generating * name update * name update again * name update again again * rename storageProperties to properties * add systemData * fix * fix lint * resolve comments * fix reference link * fix * add x-ms-secret and x-ms-mutability annotations to accountKey * fix lint Co-authored-by: Wenhao Zhang Co-authored-by: Xuyang Cao * Update readme.python.md (#16451) * Update readme.python.md * config readme * [Hub Generated] Review request for Microsoft.BotService to add version preview/2021-05-01-preview (#16012) * fix some error * update * update * update example * [Azure CDN] Add missing customHttpsParameters field in CustomDomainProperties for versions after 2019-06-15 (#16129) Co-authored-by: Bo Zhang * First time adding VideoIndexer to public repo (#16439) * First time adding VideoIndexer to public repo * Fix spelling * Fix more spelling * remove preview only api for now * [Hub Generated] Review request for Microsoft.TimeSeriesInsights to add version preview/2021-03-31-preview (#16415) * Fix S360 errors in 2021-03-31-preview * Fix prettier check * [network] `2021-02-01-preview-only` tag configuration for Python (#16375) * test * test * Update readme.python.md * Update readme.python.md * Update readme.md * fix * Update readme.python.md Co-authored-by: 00Kai0 Co-authored-by: kai ru <69238381+kairu-ms@users.noreply.github.com> * Add Change Analysis API version from private repo (#16160) * Add API versions from private repo * Fix prettier and avocado validation report * Fix prettier and avocado validation report * push manifest from private repo * Make changes for public repo * Update to correct api-version' * update agent vm image in pipeline yml (#16467) * Adding Microsoft.Chaos API Version 2021-09-15-preview. (#16453) * [baseline] Microsoft.Chaos private preview API Version 2021-09-15-preview. * msft.chaos PublicPreview API 2021-09-15-preview * Add neccessary readme's from swagger tool branch generation. * remove artifiact resource from public preview. * fix static linter issues. * [Hub Generated] Review request for Microsoft.Security to add version preview/2021-07-01-preview (#16455) * . * . * readme.python config (#16471) * Add text analytics v3.2-preview.2 API (#15736) * Add text analytics v3.2-preview.2 API * CR comments * Make project and deployment names required parameters * Fix projectName and deploymentName Rename projectName and deploymentName in input to project-name and deployment-name Co-authored-by: Omar Elhariry Co-authored-by: Kareem Yousef * Mhsm doc changes (#16444) * backuprestore 7.3 preview changes * remove Go track 1 auto-generation * 7.2 stable description * lint swagger errors Co-authored-by: Joel Hendrix * [Hub Generated] Render v1/v2 reconciliation (#16263) * render v1.0 centric updates multiple zooms differentiated by description removed * revert composition of GetCopyrightResult to resolve weird validation issue * add available tilesets into tilesetId enum * address render review * update the input files * seperate 1.0 tag * rename examples so the names don't clash and OpenAPI doc gen don't freak out, correct missing api in v2.1, remove /map/imagery in v2.1 as it should not be there * see if setting unique operationIds resolves this fragile doc gen * update custom-words for spell-check to pass * improve sample names * correct sample reference * remove V21 from operation ids Co-authored-by: Taras Vozniuk * [Microsoft.DeviceUpdate] Added private Network RP API for Private Endpoint support (#16396) * Added internal Network RP model and API * Fixed semantic validation error * prettier run * Added list operation for NRP-only proxy type * Linter fixes * Removed properties requirement * Removed read-only flags * Removing required from resources * More required properties * More c&p error fixes * Added missing property definition for remote proxy * Wrong place for provisioning state * Rogue space * Fixed an example * Another rogue space * Added internal note to descriptions * Adding missing identity properties and ExtensionTopics operation (#16469) * Adding missing identity properties and ExtensionTopics operation * fixing prettier check issues * Add identity to topic * Add system data to Extension topic response * fix lintdiff issue * fix kusto pool operation id (#16477) * Update Microsoft.Chaos API Version 2021-09-15-preview types/experiment.json (#16480) * Update azure-pipelines.yml to use ubuntu-20.04 (#16485) * Update azure-pipelines.yml * Update ShouldSendPRToMain.yml * Update BranchProtectionForPrivateRepo.yml * Update Chaos Client Name + Update outdated examples. (#16501) * publish Microsoft.AVS 2021-12-01 API (#16426) * copy 2021-06-01 API * replace "2021-06-01" with "2021-12-01" * add 2021-12-01 changes * update readme * add go * add java * fix go * Network may release: monthly branch release from Azure Networking side. (#16395) * Adds base for updating Microsoft.Network from version stable/2021-03-01 to version 2021-05-01 * Updates readme * Updates API version in new specs and examples * Add routing intent resource to 05-01 (#15998) * add routing intent resource to 05-01 * prettier fix * fix api version in examples * Update Exclusion Match Variable enum to support new values (#16124) * Adding new SKU values (#16112) * Adding new SKU values * Fixing basic in Tier(not name) Co-authored-by: Ishani Gupta * Update WAF Policy Exclusions to include RuleSet/RuleGroup/Rule hierarchy (#16154) * VNet Encryption: Add nic flag, vnet property, vnet peering property (#16224) * vnet encryption change * change api version * fix prettier check * add type object for encryption * remove circle (#16307) Co-authored-by: Weiheng Li * move to new branch (#16194) * Missed property added to LoadBalancerBackendAddress and new API (#16334) * Updated load balancer swagger with missing backendAddress property and queryInboundNatRulePortMapping API * Fixed example for QueryInboundNatRulePortMapping API * Fixed warnings * Revert "Fixed warnings" This reverts commit e3e4cac4b19f47452a2b24abfdf9e1e09d041fca. * Revert "Fixed example for QueryInboundNatRulePortMapping API" This reverts commit 5823b77f681534fbda8010901496886c88b81343. * Revert "Updated load balancer swagger with missing backendAddress property and queryInboundNatRulePortMapping API" This reverts commit e3f5bb3ca403ed5045b11bcde59d7b54975ae117. * Put changes into correct API version * Fixed lint diff errors * Fixes based on CR * Fixes based on CR * Fixed warnings * Fixed example * prettier * Fixed spelling * initial PR to the new release branch (#15842) * initial PR to the new release branch * moved body to end of request parameters, changed api version number in examples * Added action name for the list idps filter values * changed to match camel casing for the action added * fixed CR issues * fixing auto checks * fixed ARM cr issues * fixing the resource type to match specification * Isgu/fix/new branch SKU (#16410) * changes in 05 branch * Revert "Adding new SKU values (#16112)" This reverts commit bdf897a9ee38f612e97e84c2090447de0e3b1c79. Co-authored-by: Ishani Gupta Co-authored-by: Ritvika Reddy Nagula Co-authored-by: tejasshah7 <49326906+tejasshah7@users.noreply.github.com> Co-authored-by: Ishani Gupta Co-authored-by: Ishani Gupta Co-authored-by: dtuCloud Co-authored-by: Weiheng Li Co-authored-by: Weiheng Li Co-authored-by: Henry Chen Co-authored-by: irrogozh Co-authored-by: amosarbiv-work <76393841+amosarbiv-work@users.noreply.github.com> * Fixed proxy paths (#16496) * For Add cases, 404 should be error response (#16488) For AddConnectionToGroup and AddUserToGorup, if connection does not exist, or user does not exist, 404 should be considered as error response. * replace resource with proxyresource (#16325) Co-authored-by: Alex Goldschmidt * Add Microsoft.ResourceConnector [Appliance] 2021-10-31-preview API (#16384) * Add Microsoft.ResourceConnector [Appliance] 2021-10-31-preview API * Run prettier on violation files * Add SCVMM to custom-words.txt * Fix validation issues * Fix prettier issue with AppliancesListClusterUserCredential.json * Add multi API section for go readme and update namespace for python readme * Update Example files to be more accurate * Add None to Managed Identity typ in parity with other Azure Arc Resources * Add default value as AKSEdge for distro * Adding type object for ApplianceListResult * Update Identity to use SystemAssignedServiceIdentity from common-types v3 managedidentity.json * Reverting to using custom Identity * Update readme.md * Update readme.python.md Co-authored-by: Anirban Thakur Co-authored-by: Yiming Lei <59104634+RAY-316@users.noreply.github.com> * Josefree doc update (#16457) * Create Sample Directory Structure for Swagger * Delete Sample Directory Structure for Swagger * Create Sample Directory Structure for Swagger * Update Getting started with OpenAPI specifications.md * Delete Sample Directory Structure for Swagger will reuse this wiki https://github.com/Azure/azure-rest-api-specs/wiki#directory-structure, instead of creating a new one. * Update Getting started with OpenAPI specifications.md reuse this wiki for sample directory https://github.com/Azure/azure-rest-api-specs/wiki#directory-structure * Add MDE Onboarding API to Microsoft.Security (2021-10-01-preview) (#16433) * Rename 'whitelist' * add missing 'Group' in renamed file * add mdeOnboarding API - 2021-10-01-preview * fix json format * fix PR issues * add List operation * change to plural, set default resource type name * mismatch between GET and LIST examples * made descriptions clearer, removed unused parameter * defined explicit parameters * delete unused schema Co-authored-by: Erel Hansav * [Hub Generated] Review request for Microsoft.Insights to add version stable/2021-10-14 (#16417) * Adds base for updating Microsoft.Insights from version preview/2020-06-02-preview to version 2021-10-14 * Updates readme * Updates API version in new specs and examples * Fixing a relative path * Pascal casing for the resource provider name * Attempt at fixing R4018 * ADLA RP October Swagger KPI fixes (#16459) * swagger fix * 2016 patch Co-authored-by: Jimmy Xie * Remove readonly on segment length property (#16513) * remove preview tag (#16441) * Disable replay attack checkfor VPN gateway (#16515) * [Hub Generated] Review request for Microsoft.AppPlatform to add version preview/2021-09-01-preview (#16468) * Add dump API * add new line at the end of line * change cases * typo * response * add api for start/stop azure spring cloud instance * fix lint error Co-authored-by: Yinglue Zhang Co-authored-by: caiqing Co-authored-by: YinglueZhang-MS <78456380+YinglueZhang-MS@users.noreply.github.com> * Kusto: Swagger readonly cosmetics changes (no breaking changes) (#16405) * Kusto: Swagger readonly cosmetics changes * supress * prettier * fix 2017-09-07-privatepreview examples * fix 2018-09-07-preview model * 1 * 1 * [Microsoft.Security/Automations] Add AssessmentsSnapshot & SubAssessmentSnapshot data types (#16489) * Add SubAssessment event source type and add more automations examples * Change Location isReadOnlu to false * Test * Add new read/write location and add new type TrackedResourceLocation * Minor * minor * prettier fixes * Change variable name to TrackedResourceLocation * Change type name TrackedResourceLocation to AzureTrackedResourceLocation * Update automations example * Add SecureScores & SecureScoreControls as new supported datatypes in Automations resource * [ASC.Automations] add new data type RegulatoryComplianceAssessment * Add Secure Scores and Regulatory Compliance snapshot data types * Changes * minor fix * syntax fixes * [Microsoft.Security/Automations] Add AssessmentsSnapshot & SubAssessmentSnapshot data types * minor * minor * minor * minor * [Hub Generated] Public private branch 'dev-security-Microsoft.Security-2021-07-01' (#16435) * Adds base for updating Microsoft.Security from version preview/2021-05-01-preview to version 2021-07-01 * Updates readme * Updates API version in new specs and examples * Adding securityConnectors private API * Update the readme.md * adding custom word * Update Security Connector model in examples * Update main security connectors model with new organizational data properties, update examples as well. * added new offerings * fix pathing * fix offering name in all examples * add docs for patch endpoint * add system data resource * Remove duplication * Resolve tools issues * Change bool to boolean * Fix model validation errors * Fix lint error * CR fixes. Move systemData to root of object. Export identity type to definition * remove extra bracket * fix bracketing and pathing * lint fixes * fix camel case for linting * Fix systemData examples Co-authored-by: Sapir Elmakayes <32778998+SapirElmakayes@users.noreply.github.com> Co-authored-by: Sapir Elmakayes * Azure Maps - [Hub Generated] Review request for Traffic to add version preview/1.0 (#16128) * Modified method GetTrafficFlowSegment to remove the Result type and return the data type directly * Revert "Modified method GetTrafficFlowSegment to remove the Result type and return the data type directly" This reverts commit 46bc557383238dad2cd4b5d0a0040fdc754fdb79. * Flattening and renaming of several components within Traffic Segment Flow * Flattened the client for Traffic Incident Detail * More changes in flattening, now for TrafficIncident and Detail * More changes in flattening, now for TrafficIncident and Detail * More feedback addressed * prettier fixes * Clarified doc string * Added start and end time for Traffic incident * Added friendly names for x-ms-examples * Fixed avocado bugs, added query parameter as number array * Added collectionFormat to all comma separated parameters * Small changes to improve codegen * Prettier fixes * Fixed all comments from latest PR review Co-authored-by: Daniel Rocha * Adding Swagger for Short Code API (#15312) * saving progress * fixing typos * fixing typos * fixing typo * running prettier * small comment change * minor fixes * minor fix * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * saving progress * moving shortcodes files to its own folder * saving progress * adding basic readme file * Changing message details to support adding examples for contenttypes, adding estimatedRampUpTime and directionality * adding format for urls, emails and phone numbers * renames on different fields * adding back helpMessage and optOutMessage * removing tel format * S360: fix missing accesslevel field in requestResponse (#16464) * fix missing accesslevel field in requestResponse * fix another s360 issue * fix fields in example files as well * update custom words * [Hub Generated] Review request for Microsoft.DocumentDB to add version stable/2021-10-15 (#15733) * Adds base for updating Microsoft.DocumentDB from version stable/2021-06-15 to version 2021-09-15 * Updates readme * Updates API version in new specs and examples * Add support for fetching continuous backup information for latest restorable timestamp. * Adding locations API and backupRedundancy * Fixing ref * Add 10-15 Preview along with ClientEncryptionKey management changes * Renaming 2021-09-15 api version to 2021-10-15 * Fixing some more renames * fix validation checks * add clientencryptionkeys to custom-words * initial commit * Swagger specifiations * readme file updated * Review comments addressed * Added TotalThroughputLimit property to Database Create and Update * Rebased and added type to capacity * Added changes to preview folder as well * Added changes to missing files * initial checkin of base version * Adding examples; /deallocate and /start api in swagger * update readme.md file * Removing 2021-10-15-preview changes * managed cassandra swagger changes for GA * Fixing linter issues * minor description fixes * adding missing example * add stable and preview swagger * revert to Thu Sep 9 2021 change * fix linter errors in swagger * fix validation errors * validation fixes * remove fetchNodeStatus from stable * remove unused example file, fix validation error * Fixing the spell check and formatting issues * remove /repair api, make /command async * remove unreferrenced example json * remove pageable link from /status api * remove backups api, add cassandraAuditLoggingEnabled property * add cassandraAuditLoggingEnabled property * make /status api async, minor fixes * remove async tag to /status * remove connectivity property, add Ldap as preview * remove unreferenced example files * use guid in subid for examples * add backupStorageCustomerKeyUri property * fix api response code * remove ldap * Changing operationId for locations API * review comments Co-authored-by: REDMOND\amisi Co-authored-by: Anuj Toshniwal Co-authored-by: Abhijit Karanjkar Co-authored-by: Praful Johari Co-authored-by: visunda Co-authored-by: Vivek Sundararajan Co-authored-by: vivek-microsoft <32766101+vivek-microsoft@users.noreply.github.com> * [SignalR] Add stable version 2021-10-01 (#16044) * init * remove * Add 2021-10-01 * Minor update * Add 2021-05-01-preview swagger API support for Autoscale newly added fields and new controller path. (#16463) * Initially cut, cloned from know existing GA bits (IE \specification\monitor\resource-manager\Microsoft.Insights\stable\2015-04-01) * rev API version, add new controller API path, and update JSON showing newly added predictiveAutoscalePolicy field * [QuotaRP] Fix LimitObject polymorphism (#16438) * Fix LimitObject polymorphism * move properties out of allOf * add type to LimitObject * value is required * Updating Operations Tag to QuotaOperations. * Update quota.json Updating Summary field for operations. Co-authored-by: Rahul Singh <53578268+rahuls-microsoft@users.noreply.github.com> * resolving s360 item (#16476) * resloving s360 itme * added prettier-fix changes Co-authored-by: Gaurav Bang * fix typo: readonly to readOnly (#16548) Co-authored-by: Xuyang Cao * [Hub Generated] Review request for Microsoft.Security to add version preview/2021-07-01-preview (#16549) * Adds base for updating Microsoft.Security from version preview/2021-07-01-preview to version 2021-07-02-preview * Updates readme * Updates API version in new specs and examples * Fix account id to account ids * Minor * Minor Co-authored-by: Sapir Elmakayes * [Hub Generated] Review request for Microsoft.Maps/Microsoft.Maps to add version preview/2.0 (#16487) * added extra fields to JSON list data response in docs * added content-type field to request header * took out content type from header field due to errors; JSON reponse fields for user Data are ready to commit * [Hub Generated] Review request for Microsoft.Maps/Microsoft.Maps to add version preview/1.0 (#16446) * Remove mobility * Remove mobility * Remove mobility * Remove mobility reference * Trigger another pipeline? * Remove more mobility * [Hub Generated] Review request for Search to add version preview/1.0 (#16283) * First set of changes for Search API * More changes to address review * More changes to address review * More changes to address review * Reset searchAlongRoute name * Fixed roadUse * Fixed OAV error * Minor fixes * Fixed fuzzy search errors from review * Changes in Reverse Search Address mode * More changes from the review * Checkpoint commit * Fixed floating point numbers, dataSources field * Modified boundingBox to avoid causing model validation failure * Fixed more examples * Fixed more broken examples * Fixed more examples * Fixed more examples * Prettier fixes * Re-add street and buildingNumber * Revert client body flattening, add names for x-ms-enum * Removed locale-specific URLs * More changes to address review * More changes to address review * Minor fixes * More changes from the review * Fixed floating point numbers, dataSources field * Fixed final issues for review * Modified boundingBox to avoid causing model validation failure * Prettier fixes * Revert client body flattening, add names for x-ms-enum * Reflect operationId changes in Readme.typescript * Keep operations in TypeScript to be consistent for all languages * Update sdk generation to track2 * Prettier fix * Revert "Update sdk generation to track2" This reverts commit 5ede489e84a1820c06f7c26f70bf1bc9c2a3ec86. * Remove .net sdk generation since it is not used * Added prefix to Operation Id. * Fixed couple of operationIds * Renamed PolygonResponse * Address PR comments * More changes due to PR Review * Testing new batch naming * Fixed bug in searchInsideGeometry * Testing new batch naming * Fixed batch naming that didn't work well. * Renamed searchInsideGeometryBody to geometry * Finished all PR review comments, added changes to Common and Route Co-authored-by: Daniel Rocha Co-authored-by: alankashiwa * Removed redundant parameters from data plane account update example (#16552) Co-authored-by: Shailesh Kelkar * Rperezzamora/small fix for short codes (#16554) * making numberType on ShortCode model object extensible enum * Revert "making numberType on ShortCode model object extensible enum" This reverts commit 5051e3efd24853c073d4f2343076db728d96feff. Reverting change since it should have been done on feature branch * adding extensible enum metadata to short code numbertype * [Hub Generated] Creator reconciliation (#16331) * Add blockchain to latest profile * Add additional types * address review comments https://apiview.dev/Assemblies/Review/99ceeedf3dc84cc2b6652c6eba9b2431 * model validation, prettier fixes * rollback accidental legacy doc changes * resolve parameter name clashing for Description * remove the need for ExtendedGeoJsonFeatureCollection to define a descriminator by explicitly bypassing GeoJsonFeatureCollection * alias and tileset at 1.0 is not in main * leverage common's PositionLongitude/LatitudeAbbreviated for search BiasLat/Lng * address @tjprescott comments * Revert "leverage common's PositionLongitude/LatitudeAbbreviated for search BiasLat/Lng" This reverts commit 928b59e7700dede772748f8497d9746f469e80d9. * clarift GeofenceGeometry distance units in descriptions * remove remaining x-ms-client-flatten * renamed OutputOntology enum model name * rename StyleRuleType to RuleType to fix name collision * better StyleRule enum naming Co-authored-by: Mark Cowlishaw Co-authored-by: Taras Vozniuk Co-authored-by: Taras Vozniuk * [Hub Generated] Review request for Microsoft.Consumption to add version stable/2019-10-01 (#16503) * Lowered minItems to 0 to match API implementation * Added missing ThresholdType value. * Review request for Microsoft.AppPlatform to add a new field containerProbeSettings to DeploymentSettings in version 2021-09-01-preview (#16545) * Update CODEOWNERS (#16562) * Remove Provisioning Details from RestorePoint (#16099) * Add blockchain to latest profile * Add additional types * Remove Provisioning Details from RestorePoint * Fix prettier * JSON format * fix * Change 'timeCreated' Co-authored-by: Mark Cowlishaw * Revert "Robga/policy (#16255)" (#16537) This reverts commit 780a637142214a458a74db73a230dd0b1384eb2a. * Guidance and rules for release request (#16561) * 0.1.0 * update * format * add batch tag (#16578) * config desktopvirtualization readme and readme python (#16579) * config readme * Update readme.python.md Co-authored-by: Yuchao Yan * marketplacenotifications: fixing an invalid operation id (#16326) Since both of these share the same operation id - neither is currently valid / can work as such this fixes these to use the canonical name (List and Get) based on the convention * [QuestionAnswering] Move stable version from feature branch to main (#16510) * move stable to main * fix validation failures * update operationIds * update model names * Rename properties with x-ms-client-name * Properly declare ShortAnswerOptions.enable as constant true After https://github.com/Azure/autorest/pull/4184, modelAsString: false must be added * Fix linting error Co-authored-by: Heath Stewart * Add new version for scanning 2021-10-01-preview (for dns change) (#16447) * add new version for dns change * address check failures * fix readme path Co-authored-by: Parv Saxena * Resolve archboard feedback for Question Answering (#16589) * Dev maps microsoft.maps 2021 12 01 preview (#16153) * Adds base for updating Microsoft.Maps from version preview/2021-07-01-preview to version 2021-12-01-preview * Updates readme * Updates API version in new specs and examples * CORS and AccountSas * fix examples * fixing * fix example * fixing example * fix convention and systemdata * creator examples * fix by rule supress * content updates * fixes from specs pipeline * Feature/uratzmon/2021 10 27 preview (#16566) * Add blockchain to latest profile * Add additional types * copy paste the last version * replace the version string where necessary * add examples files * add new APIs * fix checks #1 * Update specification/vi/resource-manager/readme.md * delete unnecessary part Co-authored-by: Mark Cowlishaw Co-authored-by: Yuchao Yan * Service Fabric managed clusters api version 2021-11-01-preview (#16424) * initial comming copy from 2021-09-01-privatepreview * update swagger to version 2021-11-01-preview * update examples * adding serviceEndpoints * fix node type update tags * run prettier * remove api version enum as recommended not to get flagged on cros version breaking changes Co-authored-by: Alfredo Santamaria Gomez * Update dotnet sdk namespace for Microsoft.Chaos. (#16598) * [Hub Generated] Review request for Microsoft.Confluent to add version preview/2021-09-01-preview (#16048) * Adds base for updating Microsoft.Confluent from version preview/2021-03-01-preview to version 2021-09-01-preview * Updates readme * Updates API version in new specs and examples * Fixing spellcheck (#16551) * update (#16419) * Fix an issue “ServicePrincipalCredentialEnum” should be string rather than object (#16322) * [Data Factory]Change compressionType to type of object in ADF public swagger (#16563) * Change compressionType to type of object in ADF public swagger * edit adf swagger * resolve comment Co-authored-by: Haoran Sun * Merge IoT Central Public API Oct Release to main branch (#16606) * Add new 2.0-preview.1 version for IoT Central * fix typo on enum value * rollback 1.0 changes, applied 2.0-preview.1 * fix typo * remove non-used examples * fix style * update version from 2.0-preview.1 to 1.1-preview * update code review comments, fix patch consumes with json-patch support, fix examples for fileupload * add nextLink to collection of orgs * fix typo * fix wrong position of paging * fix the paging * add . to description * update default to use enum for api-version * add oct release with query, cde v2, device filter, device template filter, relationship, edge template, simplified template patching * update examples * fix lint error, model validation * fix missing type in examples, remove url format * fix ID case * fix id case * fix ID case * add iotc query language reference * fix typo * [NetAppFiles] Apply s360 fix to operations result (#16270) * Apply s360 fix to operations resutl * Fix apiversion in example * Fix validation warning and errors * Add missing encryptDCConnections propety to AcitiveDirectory * fix api version * fix througntputmips * Clarify description throughputMibps Co-authored-by: Audunn Baldvinsson * [Hub Generated] Review request for Microsoft.PolicyInsights to add version stable/2021-10-01 (#16250) * Adds base for updating Microsoft.PolicyInsights from version stable/2019-07-01 to version 2021-10-01 * Updates readme * Updates API version in new specs and examples * Microsoft.PolicyInsights/remediations new API version: 2021-10-01 * Add Go tag * Add Java tag * Update specification/policyinsights/resource-manager/readme.md Co-authored-by: Dapeng Zhang * Remove Go SDK generation flag Co-authored-by: Dapeng Zhang * Cmk support for Azure healthbot (#16520) * adding cmk support * healthbot - actual CMK changes * readme update * new line added * Change summaries from Results to ProxyResults (#16533) Co-authored-by: Alex Goldschmidt * [Hub Generated] Review request for Microsoft.Devices to add version preview/2021-07-02-preview (#16493) * Adds base for updating Microsoft.Devices from version preview/2021-07-01-preview to version 2021-07-02-preview * Updates readme * Updates API version in new specs and examples * adding the creation time in the version * add data residency flag * changing the version tag * Backup admin update (#16151) * Move preview-2018-09-01 to stable * Add new api version 2021-09-01 * correct-typescript-for-desktopVirtualization (#16614) * Fix S360 item for FSPG swagger by adding default value to backupRetentionDays and maintenanceWindow (#16502) * Changed FSPG RestartParameter.failoverMode from string to enum for API 2021-06-01, 2021-06-01-preview, and 2021-06-15-privatepreview * Change enum first letter to lower case * Change to upper case * Fix S360 bugs for swagger FSPG 2020-02-14-preview, 2021-06-01-preview and 2021-06-01 APIs * Fix S360 item by adding default value to backupRetentionDays and maintenanceWindow * [Synapse] Add tag for Synapse Nov. release (#16595) * add Nov. release tag * fix * Break down swagger into multiple files for better maintainability (#16611) * IoT Central Public API 1.1-preview Oct Release (#16514) * Add new 2.0-preview.1 version for IoT Central * fix typo on enum value * rollback 1.0 changes, applied 2.0-preview.1 * fix typo * remove non-used examples * fix style * update version from 2.0-preview.1 to 1.1-preview * update code review comments, fix patch consumes with json-patch support, fix examples for fileupload * add nextLink to collection of orgs * fix typo * fix wrong position of paging * fix the paging * add . to description * update default to use enum for api-version * add oct release with query, cde v2, device filter, device template filter, relationship, edge template, simplified template patching * update examples * fix lint error, model validation * fix missing type in examples, remove url format * fix ID case * fix id case * fix ID case * add iotc query language reference * fix typo * Try to refactor swagger and see if it is breaking * Fix casing in swagger * fix * fix semantic * Adding spec and info * aabb * Add path * fix prettier Co-authored-by: Johnson Yang * Add example events. (#16404) * Add examples * Rename certificate_new_version_created.json to secret_new_version_created.json * Update geofence_entered.json * Create geofence_entered.json * Update geofence_entered.json * Update geofence_entered.json * Update geofence_entered.json * Update geofence_result.json * Update geofence_result.json * Update keyvalue_deleted.json Add syncToken for AppConfiguration. * Update keyvalue_modified.json Add syncToken for AppConfiguration. * Delete chat_member_removed_from_thread_with_user.json * Delete chat_member_added_to_thread_with_user.json * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/active_messages_available_periodic_notifications.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/examples/deadletter_messages_available_periodic_notification.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update specification/eventgrid/data-plane/Microsoft.ContainerService/stable/2018-01-01/examples/new_kubernetes_version_available.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Update placeholders * Update app_service_plan_updated.json * Update policy_state_changed.json * Update new_kubernetes_version_available.json Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> * Removed property from sample response (#16596) * Internal Network resource - all properties are top level (PrivateEndpointConnectionProxy) (#16628) * Removed property bags from NRP proxy definition * Added top level suppression * Added provisioning state because of RPaaS validation * Another try at supressions * square #1 * square #0 * another try * [Non-breaking change] Update diagnosticsProfile.bootDiagnostics.storageUri property description. (#16430) * Add blockchain to latest profile * Add additional types * Update property description. Co-authored-by: Mark Cowlishaw * [Synapse] Decouple dependencies among Swagger specs (#16616) * extract workspaceNameParameter to common * move some definitions to common folder * workspaceNameParameter * fix * fix * revert for libraryInfo * fix for breaking change * test for breaking change * test for breaking change * [Hub Generated] Review request for Microsoft.Security to add version preview/2021-07-01-preview (#16550) * . * . * Update issue_assignment.yml (#16630) * adding parameters for dataflow activity (#16602) Co-authored-by: Bhaskar Annamalai * Update the CSharp output directory. (#16640) * Corrected Alert field to include ProxyResource. (#16572) * DPS RP API version for AZn+0 (#16538) * Initial commit, copying all files from last API version * Add changes for new API version * Update DPSCertificateCreateOrUpdate.json * Update DPSCreate.json * Update iotdps.json * Update cSpell.json * fix prettier issue * Add tag for new API * Update readme.md * Add 'systemData' * Move systemData Co-authored-by: Zhenglai Zhang * Cognitive Services Resource Provider API Version 2021-10-01 (#16418) * Adds base for updating Microsoft.CognitiveServices from version stable/2021-04-30 to version 2021-10-01 * Updates readme * Updates API version in new specs and examples * Changes for 2021-10-01 * Use 201 instead of 202 for Put, Add x-ms-pageable for List. * address comments * Added unexpected internal-only Network RP properties (#16644) * Added suppression because Network RP is sending undocumented properties * Removed suppression and added properties from NRP request * Adding operations status to the NRP Proxy resource * config readme (#16645) * [Synapse]Add auto gen readme files for cli kusto support (#16581) * Add blockchain to latest profile * Add additional types * addclikustosupportautogenfiles * removealias * addrepo Co-authored-by: Mark Cowlishaw * [Hub Generated] Review request for Microsoft.Consumption to add version stable/2021-10-01 (#16500) * Added locale field and Forecasted enum value. * Added locale field and Forecasted enum value. * Add managee tenant properties to 2020-02-01-preview (#16466) * Rperezzamora/adding new content categories (#16647) * adding new message categories * moving estimatedRampUpTimeInDays to trafficDetails * Role assignment name description (#16639) * [Refactor only] Try to use common type as much as possible and remove not used field (#16648) * IoT Central Public API 1.1-preview Oct Release (#16514) * Add new 2.0-preview.1 version for IoT Central * fix typo on enum value * rollback 1.0 changes, applied 2.0-preview.1 * fix typo * remove non-used examples * fix style * update version from 2.0-preview.1 to 1.1-preview * update code review comments, fix patch consumes with json-patch support, fix examples for fileupload * add nextLink to collection of orgs * fix typo * fix wrong position of paging * fix the paging * add . to description * update default to use enum for api-version * add oct release with query, cde v2, device filter, device template filter, relationship, edge template, simplified template patching * update examples * fix lint error, model validation * fix missing type in examples, remove url format * fix ID case * fix id case * fix ID case * add iotc query language reference * fix typo * Try to use common types for operation list * Fix semnatic * try to use provided tracked resrouce * Remove dup * Fix tracked resource * blah * remove not used stuff * Remove types aren't used * use parameters from common * fix correct path * Adding back * Adding coming sku back Co-authored-by: Johnson Yang * Cognitive Services add batch tag package-2021-10 (#16658) * [Hub Generated] Review request for Microsoft.Insights to add version stable/2021-08-01 (#15845) * Adds base for updating Microsoft.Insights from version preview/2021-02-01-preview to version 2021-08-01 * Updates readme * Updates API version in new specs and examples * Added new stable api version 2021-08-01 with paging support Co-authored-by: Avi Jerafi * [Synapse] [Bug Fix] Remove unnecessary additional properties for data flow flowlet. (#16650) * Remove additional properties * move to remove * [Hub Generated] Review request for Microsoft.EventHub to add version preview/2021-11-01-preview (#15855) * New Swagger Spec File * New Swagger Example Spec File * New Readme Config File * Adding schema registry 2021-11-01 stable spec with examples * Fixing validation errors * Adding back text type for data plane operation * Revert "Adding back text type for data plane operation" This reverts commit 572a5ef6c0831ebee59d5ce7399e2c673e27e5be. * Adding charset to plain text * Fixing Prettier checks * Adding 'schemagroups' to custom words * Addressing feedback * Switching from stable to preview * Addressing more feedback * Fixing spelling errors * Adjusting readme to reflect preview * Fixing schema examples * Small fixes * Error cleanups * Addressing comments, serialization type unchanged * Small fixes * Removing 201 from PUT * Generic string for GetById example * More small changes * Adding back 'produces' value * Camel-casing x-ms-enum value * Renaming enum name * Changing serialization type to content type * Addressing feedback comments * Adjusting co… * Add accurate descriptions for fields and update examples * Update Descriptions (#27) * Add accurate descriptions for fields and update examples * Fix alias for code owner Co-authored-by: Jorin Mejia * Lint diff fix #1 * Lint diff fix 2 * Fixes for examples, wording, response codes * Run prettier on json files, fix responses * Add definition for CheckHostNameAvailabilityInput, update example * Remove patch call for secrets and examples * Change name in x-ms-enum * Add azure async opertion header, remove LRO from PUT rulesets * Add azure async operation header to 202 responses * Update log analytics examples * Add descriptions for each SKU * Yunhe/server variable (#28) * server variable (#11) * wip server variable * server-variable udpates * server port transform * socket address * update server variable * resolve comments * revert unwanted change * server variable conditions * fix hostname type name * update sslProtocol to extensible string * Add object type to conditions * Add transforms for RemoteAddress * Update CheckHostNameAvailability examples * Remove 202 response from PUT operations on RuleSets * Remove 202 response from Rules_Create.json * Add 202 response to rules, remove 202 response from RuleSets_Create.json * Run prettier * Remove breaking change enum & move ActivatedResourceReference to afdx.json * Adding managed identity to profile object. (#29) * Adding managed identity to profile object. * Adding user assigned identity to identity. * Adding user assigned identity section * Removing user assigned identity * Removing user assigned from enum. * Removing readonly * Changing modelAsString to true Co-authored-by: Jorin Mejia Co-authored-by: yunheMsft <69871746+yunheMsft@users.noreply.github.com> Co-authored-by: SINADELL Co-authored-by: Sindhuri Co-authored-by: Jessica Li Co-authored-by: Chenglong Liu <48578056+ChenglongLiu@users.noreply.github.com> Co-authored-by: Chenglong Liu Co-authored-by: t-bzhan <61817681+t-bzhan@users.noreply.github.com> Co-authored-by: Bo Zhang Co-authored-by: rrahulms <42217269+rrahulms@users.noreply.github.com> Co-authored-by: laurent-mic <41535579+laurent-mic@users.noreply.github.com> Co-authored-by: Lei Ni <7233663+leni-msft@users.noreply.github.com> Co-authored-by: sameerpatro <88674399+sameerpatro@users.noreply.github.com> Co-authored-by: George Moussa Co-authored-by: Ray Chen Co-authored-by: Vaishnavi Janardhan Co-authored-by: sashanm <54701252+sashanm@users.noreply.github.com> Co-authored-by: t-vjanardhan <77781522+t-vjanardhan@users.noreply.github.com> Co-authored-by: Nidhi Jain Co-authored-by: nija-dev <67132984+nija-dev@users.noreply.github.com> Co-authored-by: Vaishnavi Janardhan Co-authored-by: Zed Lei <59104634+RAY-316@users.noreply.github.com> Co-authored-by: giakas Co-authored-by: Paul Hsu Co-authored-by: Youssef Shahin Co-authored-by: Nikki Zuko <38327895+nizuko@users.noreply.github.com> Co-authored-by: joseph-porter <69636506+joseph-porter@users.noreply.github.com> Co-authored-by: Amit Elran Co-authored-by: Amit Elran Co-authored-by: SanjaMalesevic <53555921+SanjaMalesevic@users.noreply.github.com> Co-authored-by: Jonathan Innis Co-authored-by: savaradh <60020169+savaradh@users.noreply.github.com> Co-authored-by: esdhrgl1984 <44240496+esdhrgl1984@users.noreply.github.com> Co-authored-by: vasanthrajams <60414148+vasanthrajams@users.noreply.github.com> Co-authored-by: larisaborodina <58491292+larisaborodina@users.noreply.github.com> Co-authored-by: Sean McCullough <44180881+seanmcc-msft@users.noreply.github.com> Co-authored-by: Young Bu Park Co-authored-by: JiahuiPeng <46921893+804873052@users.noreply.github.com> Co-authored-by: Arcturus Co-authored-by: Alex Tsao Co-authored-by: Alex Tsao Co-authored-by: AriZavala2 <77034370+AriZavala2@users.noreply.github.com> Co-authored-by: Dongwei Wang Co-authored-by: Dongwei Wang Co-authored-by: Jiefeng Chen <51037443+BigCat20196@users.noreply.github.com> Co-authored-by: Chou Hu Co-authored-by: Charlie Li <39974812+chengliangli0918@users.noreply.github.com> Co-authored-by: Charlie Li Co-authored-by: rsamigullin <89222124+rsamigullin@users.noreply.github.com> Co-authored-by: Matthew Christopher Co-authored-by: rohkuma-microsoft <90003118+rohkuma-microsoft@users.noreply.github.com> Co-authored-by: Ajit Navasare Co-authored-by: Damodar Avadhani Co-authored-by: v-ajnava Co-authored-by: Tom Harvey Co-authored-by: Samuel Kuang Co-authored-by: Ritwik Rajendra <21337621+ritwik8119@users.noreply.github.com> Co-authored-by: Ritwik Rajendra Co-authored-by: kai ru <69238381+kairu-ms@users.noreply.github.com> Co-authored-by: Thomas Pham Co-authored-by: hivyas <61890270+hivyas@users.noreply.github.com> Co-authored-by: Anne Thompson Co-authored-by: LarryZhang19 <35974877+LarryZhang19@users.noreply.github.com> Co-authored-by: Samir Solanki Co-authored-by: Alan Po-Ching Yang Co-authored-by: Daniel Rocha Co-authored-by: Ishay Dahan Co-authored-by: prince3332 Co-authored-by: Prince Gupta Co-authored-by: Rohan Kulkarni <36928710+rokulka@users.noreply.github.com> Co-authored-by: jiacheng-L <71623842+jiacheng-L@users.noreply.github.com> Co-authored-by: najian Co-authored-by: Nan Jiang Co-authored-by: swvenkats <87731907+swvenkats@users.noreply.github.com> Co-authored-by: Jie Shen Co-authored-by: Wenhao Zhang Co-authored-by: Xuyang Cao Co-authored-by: Zhixiang Zhan Co-authored-by: tabenari <73182585+tabenari@users.noreply.github.com> Co-authored-by: Kyle Rush Co-authored-by: Yuchao Yan Co-authored-by: 00Kai0 Co-authored-by: Jenny Winkler <52216782+jewinkle@users.noreply.github.com> Co-authored-by: Mario Hernandez Co-authored-by: kerend Co-authored-by: korosensei Co-authored-by: Omar Elhariry Co-authored-by: Kareem Yousef Co-authored-by: Maddie Lucas <85301813+maddiemlucas@users.noreply.github.com> Co-authored-by: Joel Hendrix Co-authored-by: Taras Vozniuk Co-authored-by: Taras Vozniuk Co-authored-by: darkoa-msft <61987922+darkoa-msft@users.noreply.github.com> Co-authored-by: Wan Yang Co-authored-by: Zhenglai Zhang Co-authored-by: Cameron Taggart Co-authored-by: Mikhail Co-authored-by: Ritvika Reddy Nagula Co-authored-by: tejasshah7 <49326906+tejasshah7@users.noreply.github.com> Co-authored-by: Ishani Gupta Co-authored-by: Ishani Gupta Co-authored-by: dtuCloud Co-authored-by: Weiheng Li Co-authored-by: Weiheng Li Co-authored-by: Henry Chen Co-authored-by: irrogozh Co-authored-by: amosarbiv-work <76393841+amosarbiv-work@users.noreply.github.com> Co-authored-by: Liangying.Wei Co-authored-by: alexgoldschmidt <33302838+alexgoldschmidt@users.noreply.github.com> Co-authored-by: Alex Goldschmidt Co-authored-by: anirbanthakur <89666721+anirbanthakur@users.noreply.github.com> Co-authored-by: Anirban Thakur Co-authored-by: Josephine Qiu Co-authored-by: Erel Hansav Co-authored-by: Erel Hansav Co-authored-by: Alexander Kaplan Co-authored-by: jimmyshie123 Co-authored-by: Jimmy Xie Co-authored-by: Aishwarya C S <24403906+Aishwarya-C-S@users.noreply.github.com> Co-authored-by: misbamomin <79725363+misbamomin@users.noreply.github.com> Co-authored-by: Sandy Cai Co-authored-by: Yinglue Zhang Co-authored-by: caiqing Co-authored-by: YinglueZhang-MS <78456380+YinglueZhang-MS@users.noreply.github.com> Co-authored-by: docohe <54349195+docohe@users.noreply.github.com> Co-authored-by: surashed <55134940+surashed@users.noreply.github.com> Co-authored-by: TomerHmsft <92307325+TomerHmsft@users.noreply.github.com> Co-authored-by: Sapir Elmakayes <32778998+SapirElmakayes@users.noreply.github.com> Co-authored-by: Sapir Elmakayes Co-authored-by: Daniel Rocha Co-authored-by: rperezzamora <80124228+rperezzamora@users.noreply.github.com> Co-authored-by: kavskalyan Co-authored-by: REDMOND\amisi Co-authored-by: Anuj Toshniwal Co-authored-by: Abhijit Karanjkar Co-authored-by: Praful Johari Co-authored-by: visunda Co-authored-by: Vivek Sundararajan Co-authored-by: vivek-microsoft <32766101+vivek-microsoft@users.noreply.github.com> Co-authored-by: Chenyang Liu Co-authored-by: PatrickTseng Co-authored-by: sbudhi-msft <81762203+sbudhi-msft@users.noreply.github.com> Co-authored-by: Rahul Singh <53578268+rahuls-microsoft@users.noreply.github.com> Co-authored-by: Gaurav Co-authored-by: Gaurav Bang Co-authored-by: Xuyang Cao Co-authored-by: sanil7777777 <90470998+sanil7777777@users.noreply.github.com> Co-authored-by: MaxWrightMicrosoft <89222647+MaxWrightMicrosoft@users.noreply.github.com> Co-authored-by: shaileshsk94 <52837212+shaileshsk94@users.noreply.github.com> Co-authored-by: Shailesh Kelkar Co-authored-by: Mark Cowlishaw Co-authored-by: Taras Vozniuk Co-authored-by: sashahdo <64434373+sashahdo@users.noreply.github.com> Co-authored-by: Caihua Rui <71814127+CaihuaRui@users.noreply.github.com> Co-authored-by: sukodava <78733210+sukodava@users.noreply.github.com> Co-authored-by: Robert Gao Co-authored-by: Heath Stewart Co-authored-by: Parv Saxena Co-authored-by: Parv Saxena Co-authored-by: Daniel Stack Co-authored-by: uratzmon <81904834+uratzmon@users.noreply.github.com> Co-authored-by: Alfredo Santamaria Co-authored-by: Alfredo Santamaria Gomez Co-authored-by: Krishna Sri Somepalli Co-authored-by: kesharma <74746991+kesharma@users.noreply.github.com> Co-authored-by: Jingshu923 <52914166+Jingshu923@users.noreply.github.com> Co-authored-by: rickysun93 Co-authored-by: Haoran Sun Co-authored-by: Johnson Yang Co-authored-by: Auðunn Co-authored-by: Audunn Baldvinsson Co-authored-by: Elad Perets <7473455+eladperets@users.noreply.github.com> Co-authored-by: Dapeng Zhang Co-authored-by: Avi Paz Co-authored-by: vikramadityab72 Co-authored-by: Yanqiong Chen <86596306+yanqiongchen@users.noreply.github.com> Co-authored-by: colawwj <70128817+colawwj@users.noreply.github.com> Co-authored-by: xunsun-commits <84804232+xunsun-commits@users.noreply.github.com> Co-authored-by: Shuo LI Co-authored-by: Tianyun Gao (MSFT) <65581162+Tianyun-G@users.noreply.github.com> Co-authored-by: JoshLove-msft <54595583+JoshLove-msft@users.noreply.github.com> Co-authored-by: Omar Rodriguez <73562205+omrodrig@users.noreply.github.com> Co-authored-by: Avinash Co-authored-by: Ruoxuan Wang <52271048+ruowan@users.noreply.github.com> Co-authored-by: bannama Co-authored-by: Bhaskar Annamalai Co-authored-by: leigharubin <78169930+leigharubin@users.noreply.github.com> Co-authored-by: Zhenglai Zhang Co-authored-by: Yang Yuan Co-authored-by: zesluo Co-authored-by: Saif Kayani Co-authored-by: Robert Lyon <35980532+rolyon@users.noreply.github.com> Co-authored-by: avjerafi <64891828+avjerafi@users.noreply.github.com> Co-authored-by: Avi Jerafi Co-authored-by: Jack Ma Co-authored-by: Nick Hardwick <31860550+nickghardwick@users.noreply.github.com> Co-authored-by: xolve Co-authored-by: Ravi Arora Co-authored-by: Maor Leger Co-authored-by: tianxchen-ms <403562789@qq.com> Co-authored-by: Tianxiang Chen Co-authored-by: Theertharaj <40805847+thramu@users.noreply.github.com> Co-authored-by: Xingdong Li Co-authored-by: Xingdong Li Co-authored-by: Adriano Arce Co-authored-by: ILAVELAN KANNIAPPAN Co-authored-by: Roslyn Lu Co-authored-by: Roslyn Lu Co-authored-by: yoram-cohen-microsoft <92515642+yoram-cohen-microsoft@users.noreply.github.com> Co-authored-by: cfurmanczyk <89105175+cfurmanczyk@users.noreply.github.com> Co-authored-by: Braden Watkins Co-authored-by: Braden Watkins Co-authored-by: orkayam <68549999+orkayam@users.noreply.github.com> Co-authored-by: Orel Kayam Co-authored-by: vayada Co-authored-by: Andrew Peacock Co-authored-by: msyache <70287970+msyache@users.noreply.github.com> Co-authored-by: Yang Chen Co-authored-by: Hande Adiguzel <89477033+handeeeadiguzel@users.noreply.github.com> Co-authored-by: Christian Eduardo Palomares Peralta Co-authored-by: Alexander Zaslonov Co-authored-by: DreamlessA Co-authored-by: Alan Feng Co-authored-by: Jatin Sanghvi <20547963+JatinSanghvi@users.noreply.github.com> Co-authored-by: Nicolás Barrera Co-authored-by: Nicolás Barrera Co-authored-by: VitaliyKurokhtin Co-authored-by: Christian Palomares Co-authored-by: RupengLiu Co-authored-by: msyyc <70930885+msyyc@users.noreply.github.com> Co-authored-by: rkapso Co-authored-by: Ochirkhuyag Co-authored-by: Ochi Co-authored-by: rezmicrosoft <70175798+rezmicrosoft@users.noreply.github.com> Co-authored-by: rez1 Co-authored-by: GovardhanaDK <36787828+GovardhanaDK@users.noreply.github.com> Co-authored-by: Govardhana D K Co-authored-by: Jane Lijuan Zhang Co-authored-by: inballeibovitch <74146365+inballeibovitch@users.noreply.github.com> Co-authored-by: jeffj6123 Co-authored-by: Joshua McCarthy Co-authored-by: jmccarthy Co-authored-by: Nick Depinet Co-authored-by: Nick Depinet Co-authored-by: Guosen Wang Co-authored-by: Deyaaeldeen Almahallawi Co-authored-by: Nitesh Vijay Co-authored-by: anujtoshniwal <62551957+anujtoshniwal@users.noreply.github.com> Co-authored-by: Ajay Parulekar <79739098+ajparule@users.noreply.github.com> Co-authored-by: Amit Singh <31076927+amisi01@users.noreply.github.com> Co-authored-by: pjohari-ms <84465928+pjohari-ms@users.noreply.github.com> Co-authored-by: KeYu(AnkhSpirit) <33389195+KeYu-AnkhSpirit@users.noreply.github.com> Co-authored-by: Travis Prescott Co-authored-by: Mohamed Abbas Co-authored-by: dabenhamMic <74346518+dabenhamMic@users.noreply.github.com> Co-authored-by: Jimmy Campbell Co-authored-by: Suna Liu Co-authored-by: varun kumar kunchakuri <66476965+vakuncha@users.noreply.github.com> Co-authored-by: sagamzu <52034287+sagamzu@users.noreply.github.com> Co-authored-by: Yihang Co-authored-by: sonalverm <73529783+sonalverm@users.noreply.github.com> Co-authored-by: Weidong Xu Co-authored-by: Ritesh chitlangia <60164879+riteshchitlangia1@users.noreply.github.com> Co-authored-by: kim-soohwan <40476315+kim-soohwan@users.noreply.github.com> Co-authored-by: Soohwan Kim Co-authored-by: Arthur Ning <57385816+akning-ms@users.noreply.github.com> Co-authored-by: zhangyan133 <77086185+zhangyan133@users.noreply.github.com> Co-authored-by: Yan Zhang (WICRESOFT NORTH AMERICA LTD) Co-authored-by: 陈箭飞 <32889038+chenjianfei2017@users.noreply.github.com> Co-authored-by: Your Name Co-authored-by: jdhms <77470403+jdhms@users.noreply.github.com> Co-authored-by: Alexander Batishchev Co-authored-by: dosegal <51155368+dosegal@users.noreply.github.com> Co-authored-by: Bruce Johnston Co-authored-by: Abdullah Syed <50675866+absyed@users.noreply.github.com> Co-authored-by: stuartko <47676853+stuartko@users.noreply.github.com> Co-authored-by: pvsraviteja <67624658+pvsraviteja@users.noreply.github.com> Co-authored-by: Nick Schonning Co-authored-by: Suba Co-authored-by: zhaomuzhi Co-authored-by: Vinay Rajmal Soni Co-authored-by: jopet@microsoft.com Co-authored-by: Josh Peterson <15050193+joshanator@users.noreply.github.com> Co-authored-by: chandrikagonuguntla Co-authored-by: Chandrika Gonuguntla Co-authored-by: aarongas Co-authored-by: Saar Shen Co-authored-by: Junbo Wang Co-authored-by: Hervey Wilson Co-authored-by: Janusz Lembicz Co-authored-by: Alexander Schmidt Co-authored-by: ThomasDai <73230321+ThomasDai@users.noreply.github.com> Co-authored-by: Trask Stalnaker Co-authored-by: alexsavo-ms <78455310+alexsavo-ms@users.noreply.github.com> Co-authored-by: TJ Egbejimba Co-authored-by: averyrob <78236769+averyrob@users.noreply.github.com> Co-authored-by: Aman Swaika Co-authored-by: Aman Swaika Co-authored-by: Gaurav Mishra (IDENTITY) Co-authored-by: us6193 Co-authored-by: Umang Shah Co-authored-by: Srinivas Co-authored-by: Xiang Yan Co-authored-by: Krista Pratico Co-authored-by: Srikanta <51379715+srnagar@users.noreply.github.com> Co-authored-by: jastenze <71854693+jastenze@users.noreply.github.com> Co-authored-by: Jose Manuel Heredia Hidalgo Co-authored-by: Rishi Kapoor Co-authored-by: Subrahmanyam Mandavilli Co-authored-by: Xing Zhou Co-authored-by: mkarmark Co-authored-by: Laurent Mazuel Co-authored-by: Ji Wang Co-authored-by: taogems <55105930+taogems@users.noreply.github.com> Co-authored-by: Mayank Aggarwal Co-authored-by: Mayank Aggarwal Co-authored-by: FAREAST\zakinkh Co-authored-by: Congrui <43364740+conhua@users.noreply.github.com> Co-authored-by: jadrefke Co-authored-by: Austin Drefke Co-authored-by: Amr Elroumy (Work) <77645021+amrelroumy-msft@users.noreply.github.com> Co-authored-by: akashkeshari Co-authored-by: Akash Keshari Co-authored-by: simanor <49607823+simanor@users.noreply.github.com> Co-authored-by: Tom FitzMacken Co-authored-by: Qiaoqiao Zhang <55688292+qiaozha@users.noreply.github.com> Co-authored-by: bowgong <56386108+bowgong@users.noreply.github.com> Co-authored-by: Jack Lichwa <52512203+jlichwa@users.noreply.github.com> Co-authored-by: jainharsh98 Co-authored-by: Shubham Gupta Co-authored-by: ssss141414 Co-authored-by: JianyeXi <59603451+jianyexi@users.noreply.github.com> Co-authored-by: jianyexi Co-authored-by: Mike Budzynski <40186513+mikebudzynski@users.noreply.github.com> Co-authored-by: litchiyangMSFT <64560090+litchiyangMSFT@users.noreply.github.com> Co-authored-by: mayank88mahajan Co-authored-by: Weiguo Zhang Co-authored-by: maddieminn <79888413+maddieminn@users.noreply.github.com> Co-authored-by: nilgupta6 <78136736+nilgupta6@users.noreply.github.com> Co-authored-by: Yuan Xi Co-authored-by: Kai-Wen Feng <82062838+kaiwenfeng4086@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Yuping Wei <56525716+yupwei68@users.noreply.github.com> Co-authored-by: Dania Etienne Co-authored-by: Dania Etienne Co-authored-by: yl-ms <79939366+yl-ms@users.noreply.github.com> Co-authored-by: Aditi <12823918+aditimalladi@users.noreply.github.com> Co-authored-by: Aditi Co-authored-by: Meha Kaushik Co-authored-by: Meha Kaushik Co-authored-by: Christopher Bennage Co-authored-by: Ramu Co-authored-by: vipinhas <82088177+vipinhas@users.noreply.github.com> Co-authored-by: Jorge Cotillo Co-authored-by: yuzhangyi <44692931+yuzhangyi@users.noreply.github.com> Co-authored-by: zhanyu2014 Co-authored-by: ityankel <47292630+ityankel@users.noreply.github.com> Co-authored-by: hongxian <48581117+hongxian@users.noreply.github.com> Co-authored-by: Hongxian Yao Co-authored-by: nichatur <69816349+nichatur@users.noreply.github.com> Co-authored-by: Himanshu Chandel Co-authored-by: Himanshu Chandel Co-authored-by: Kalpesh Chavan <18593210+KalpeshChavan12@users.noreply.github.com> Co-authored-by: Kalpesh Chavan Co-authored-by: Bin Yu <56588422+BinYuMSFT@users.noreply.github.com> Co-authored-by: Bin Yu Co-authored-by: bar810 Co-authored-by: harini-ms <34797776+harini-ms@users.noreply.github.com> Co-authored-by: Harini Co-authored-by: alexandra142 Co-authored-by: Alexandra Lamiova Pistrakova Co-authored-by: iscai-msft Co-authored-by: stivanov-git <61129265+stivanov-git@users.noreply.github.com> Co-authored-by: Mel M <50640763+melmullen@users.noreply.github.com> Co-authored-by: neku <82562198+Neku-microsoft@users.noreply.github.com> Co-authored-by: ItaySofer Co-authored-by: Itay Sofer Co-authored-by: Luke Slevinsky Co-authored-by: yanfa317 <53584318+yanfa317@users.noreply.github.com> Co-authored-by: Noam Dishon <30979046+dishonono@users.noreply.github.com> Co-authored-by: sandeepparab Co-authored-by: Sandeep Parab Co-authored-by: kryalama <66494519+kryalama@users.noreply.github.com> Co-authored-by: David Watrous Co-authored-by: wwendyc Co-authored-by: Wendy Chang Co-authored-by: Pradeep Kintali <50682039+pradeepkintali@users.noreply.github.com> Co-authored-by: Jeff Couckuyt Co-authored-by: Robert Johnson Co-authored-by: Subbarayudu Kamma Co-authored-by: xerxestph <78384060+xerxestph@users.noreply.github.com> Co-authored-by: Po Tsang Co-authored-by: aleksbol Co-authored-by: Naveed Aziz Co-authored-by: Thomas Reis Co-authored-by: Karthik Kunjithapatham <77180268+karthikku-2020@users.noreply.github.com> Co-authored-by: Ben Viglietta Co-authored-by: Ben Viglietta Co-authored-by: Shuai Wang Co-authored-by: Tal Shoham <87926500+tshoham@users.noreply.github.com> Co-authored-by: Tamir Ben-Arie Co-authored-by: Mohit Chakraborty <8271806+Mohit-Chakraborty@users.noreply.github.com> Co-authored-by: Vu Tran <36055117+vutran01@users.noreply.github.com> Co-authored-by: bganapa Co-authored-by: Devanshu Singh <8132290+thisisdevanshu@users.noreply.github.com> Co-authored-by: Sunny Patel Co-authored-by: Sunny Patel Co-authored-by: Devanshu Singh Co-authored-by: Jim Harris <72156062+MicrosoftJim@users.noreply.github.com> Co-authored-by: Akanksha Bhattacharyya Co-authored-by: Akanksha Bhattacharyya Co-authored-by: Tony Vargas Co-authored-by: Kamil Sobol <61715331+kasobol-msft@users.noreply.github.com> Co-authored-by: giladsu <43436811+giladsu@users.noreply.github.com> Co-authored-by: Milan Brkic Co-authored-by: Tyler Lloyd Co-authored-by: Li Ma Co-authored-by: hbc Co-authored-by: Bradley Bridges Co-authored-by: damodaravadhani <91929893+damodaravadhani@users.noreply.github.com> Co-authored-by: pednekarpraj <72415888+pednekarpraj@users.noreply.github.com> Co-authored-by: Lior Abadi Co-authored-by: Lior Abadi Co-authored-by: Eli Arbel Co-authored-by: jbuls <48029054+jbuls@users.noreply.github.com> Co-authored-by: ajbrown821 <96266510+ajbrown821@users.noreply.github.com> --- CODEOWNERS | 2 +- custom-words.txt | 1 + .../Microsoft.Cdn/stable/2019-04-15/cdn.json | 6 +- .../Microsoft.Cdn/stable/2019-06-15/cdn.json | 6 +- .../Microsoft.Cdn/stable/2019-12-31/cdn.json | 6 +- .../Microsoft.Cdn/stable/2020-03-31/cdn.json | 6 +- .../Microsoft.Cdn/stable/2020-04-15/cdn.json | 6 +- .../Microsoft.Cdn/stable/2020-09-01/cdn.json | 6 +- .../Microsoft.Cdn/stable/2021-06-01/afdx.json | 5796 +++++++++++++++ .../Microsoft.Cdn/stable/2021-06-01/cdn.json | 6427 +++++++++++++++++ .../2021-06-01/cdnwebapplicationfirewall.json | 937 +++ .../examples/AFDCustomDomains_Create.json | 104 + .../examples/AFDCustomDomains_Delete.json | 14 + .../examples/AFDCustomDomains_Get.json | 38 + .../AFDCustomDomains_ListByProfile.json | 41 + ...DCustomDomains_RefreshValidationToken.json | 13 + .../examples/AFDCustomDomains_Update.json | 79 + .../examples/AFDEndpoints_Create.json | 67 + .../examples/AFDEndpoints_Delete.json | 14 + .../2021-06-01/examples/AFDEndpoints_Get.json | 27 + .../examples/AFDEndpoints_ListByProfile.json | 30 + .../AFDEndpoints_ListResourceUsage.json | 27 + .../examples/AFDEndpoints_PurgeContent.json | 21 + .../examples/AFDEndpoints_Update.json | 53 + .../AFDEndpoints_ValidateCustomDomain.json | 21 + .../examples/AFDOriginGroups_Create.json | 99 + .../examples/AFDOriginGroups_Delete.json | 14 + .../examples/AFDOriginGroups_Get.json | 35 + .../AFDOriginGroups_ListByProfile.json | 38 + .../AFDOriginGroups_ListResourceUsage.json | 27 + .../examples/AFDOriginGroups_Update.json | 78 + .../examples/AFDOrigins_Create.json | 75 + .../examples/AFDOrigins_Delete.json | 15 + .../2021-06-01/examples/AFDOrigins_Get.json | 30 + .../AFDOrigins_ListByOriginGroup.json | 33 + .../examples/AFDOrigins_Update.json | 59 + ...AFDProfiles_CheckHostNameAvailability.json | 20 + .../AFDProfiles_ListResourceUsage.json | 26 + .../examples/CheckNameAvailability.json | 18 + ...CheckNameAvailabilityWithSubscription.json | 19 + .../examples/CustomDomains_Create.json | 62 + .../examples/CustomDomains_Delete.json | 32 + .../CustomDomains_DisableCustomHttps.json | 28 + ...tomDomains_EnableCustomHttpsUsingBYOC.json | 43 + ...CustomHttpsUsingCDNManagedCertificate.json | 37 + .../examples/CustomDomains_Get.json | 27 + .../CustomDomains_ListByEndpoint.json | 30 + .../2021-06-01/examples/EdgeNodes_List.json | 107 + .../2021-06-01/examples/Endpoints_Create.json | 543 ++ .../2021-06-01/examples/Endpoints_Delete.json | 14 + .../2021-06-01/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 + .../2021-06-01/examples/Endpoints_Start.json | 86 + .../2021-06-01/examples/Endpoints_Stop.json | 86 + .../2021-06-01/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 + .../2021-06-01/examples/Operations_List.json | 93 + .../examples/OriginGroups_Create.json | 109 + .../examples/OriginGroups_Delete.json | 15 + .../2021-06-01/examples/OriginGroups_Get.json | 44 + .../examples/OriginGroups_ListByEndpoint.json | 41 + .../examples/OriginGroups_Update.json | 74 + .../2021-06-01/examples/Origins_Create.json | 92 + .../2021-06-01/examples/Origins_Delete.json | 15 + .../2021-06-01/examples/Origins_Get.json | 33 + .../examples/Origins_ListByEndpoint.json | 36 + .../2021-06-01/examples/Origins_Update.json | 68 + .../2021-06-01/examples/Profiles_Create.json | 64 + .../2021-06-01/examples/Profiles_Delete.json | 13 + .../examples/Profiles_GenerateSsoUri.json | 15 + .../2021-06-01/examples/Profiles_Get.json | 26 + .../2021-06-01/examples/Profiles_List.json | 42 + .../Profiles_ListByResourceGroup.json | 43 + .../examples/Profiles_ListResourceUsage.json | 22 + ...ofiles_ListSupportedOptimizationTypes.json | 18 + .../2021-06-01/examples/Profiles_Update.json | 54 + .../examples/ResourceUsage_List.json | 20 + .../2021-06-01/examples/Routes_Create.json | 193 + .../2021-06-01/examples/Routes_Delete.json | 15 + .../2021-06-01/examples/Routes_Get.json | 59 + .../examples/Routes_ListByEndpoint.json | 62 + .../2021-06-01/examples/Routes_Update.json | 148 + .../2021-06-01/examples/RuleSets_Create.json | 33 + .../2021-06-01/examples/RuleSets_Delete.json | 14 + .../2021-06-01/examples/RuleSets_Get.json | 22 + .../examples/RuleSets_ListByProfile.json | 25 + .../examples/RuleSets_ListResourceUsage.json | 27 + .../2021-06-01/examples/Rules_Create.json | 143 + .../2021-06-01/examples/Rules_Delete.json | 15 + .../stable/2021-06-01/examples/Rules_Get.json | 46 + .../examples/Rules_ListByRuleSet.json | 49 + .../2021-06-01/examples/Rules_Update.json | 99 + .../2021-06-01/examples/Secrets_Create.json | 104 + .../2021-06-01/examples/Secrets_Delete.json | 14 + .../2021-06-01/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 | 101 + .../2021-06-01/examples/ValidateProbe.json | 18 + .../2021-06-01/examples/Validate_Secret.json | 22 + .../examples/WafListManagedRuleSets.json | 53 + .../2021-06-01/examples/WafListPolicies.json | 265 + .../2021-06-01/examples/WafPatchPolicy.json | 275 + .../examples/WafPolicyCreateOrUpdate.json | 505 ++ .../2021-06-01/examples/WafPolicyDelete.json | 12 + .../2021-06-01/examples/WafPolicyGet.json | 139 + specification/cdn/resource-manager/readme.md | 38 +- 119 files changed, 20001 insertions(+), 23 deletions(-) create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/afdx.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdn.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdnwebapplicationfirewall.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_RefreshValidationToken.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_ListByOriginGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_CheckHostNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_DisableCustomHttps.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/EdgeNodes_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_LoadContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Start.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Stop.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsLocations.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsMetrics.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsRankings.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsResources.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsRankings.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Operations_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_GenerateSsoUri.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListByResourceGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListSupportedOptimizationTypes.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ResourceUsage_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_ListByRuleSet.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Patch.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ValidateProbe.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Validate_Secret.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListManagedRuleSets.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListPolicies.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPatchPolicy.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyDelete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyGet.json diff --git a/CODEOWNERS b/CODEOWNERS index 98b5c3b4ba4b..36ecde267bae 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -11,7 +11,7 @@ /specification/batch/ @paterasMSFT @dpwatrous /specification/batchai/ @alexanderyukhanov /specification/billing/ @wilcobmsft @asarkar84 -/specification/cdn/ @csmengwan @injyzarif @prakharsharma10 +/specification/cdn/ @jorinmejia @yunhemsft @jessicl-ms @sinadell @rrahulms @t-bzhan /specification/cognitiveservices/ @felixwa @yangyuan /specification/compute/ @bilaakpan-ms @sandido @dkulkarni-ms @haagha @madewithsmiles @MS-syh2qs @grizzlytheodore @hyonholee @mabhard @danielli90 @smotwani @ppatwa @vikramd-ms @savyasachisamal @yunusm @ZhidongPeng @nkuchta @maheshnemichand @najams @changov /specification/consumption/ @kjeur @panda-wang diff --git a/custom-words.txt b/custom-words.txt index 4efaef98677a..0b28c207e259 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1536,6 +1536,7 @@ Preprovisioned Prerelease prerestore pretrained +prevalidated previewrows prevsharesnapshot prevsnapshot diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json index 6dff0ae76a06..ac5cb4ce38de 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json @@ -3590,7 +3590,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json index 768647aaadab..3791c34e3c59 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json @@ -3600,7 +3600,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json index 6cb656e831c0..0e2e6a900fbc 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json @@ -4109,7 +4109,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json index b3b98482c32f..7b153df653d2 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json @@ -4167,7 +4167,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json index 26b647e47a5b..ebe09c154c56 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json @@ -4175,7 +4175,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json index a7702a5b8e90..7f90b7d7491b 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json @@ -4217,7 +4217,11 @@ "type": "string", "enum": [ "Lowercase", - "Uppercase" + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" ], "x-ms-enum": { "name": "transform", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/afdx.json new file mode 100644 index 000000000000..9c4c4813f70f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/afdx.json @@ -0,0 +1,5796 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-06-01", + "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/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": "securityPolicyProperties", + "in": "body", + "description": "Security policy update properties", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPolicyProperties" + } + }, + { + "$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" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainValidationState", + "modelAsString": true + } + }, + "hostName": { + "description": "The host name of the domain. Must be a domain name.", + "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", + "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/SecurityPolicyParameters" + } + } + }, + "SecurityPolicyParameters": { + "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/SecurityPolicyParameters" + } + ], + "properties": { + "wafPolicy": { + "type": "object", + "description": "Resource ID.", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "associations": { + "description": "Waf associations", + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPolicyWebApplicationFirewallAssociation" + } + } + } + }, + "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." + } + } + }, + "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 + } + } + }, + "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 + } + }, + "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, + "maximum": 240, + "exclusiveMinimum": false + } + } + }, + "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", + "items": { + "$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" + } + } + }, + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": { + "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": "./cdn.json#/definitions/ResponseBasedOriginErrorDetectionParameters" + }, + "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", + "items": { + "$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" + } + }, + "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" + } + }, + "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 + } + } + } + }, + "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" + } + } + } + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "dateTime": { + "type": "string", + "format": "date-time" + }, + "value": { + "type": "number" + } + } + } + } + } + } + } + } + }, + "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" + } + } + } + } + } + } + } + } + } + } + } + }, + "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" + } + } + } + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "dateTime": { + "type": "string", + "format": "date-time" + }, + "value": { + "type": "number" + } + } + } + } + } + } + } + } + }, + "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" + } + } + } + } + } + } + } + } + }, + "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 2021-06-01." + }, + "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/stable/2021-06-01/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdn.json new file mode 100644 index 000000000000..7c43a6e50939 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdn.json @@ -0,0 +1,6427 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-06-01", + "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/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." + }, + "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" + } + } + } + } + }, + "/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." + }, + "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" + } + } + } + } + }, + "/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" + }, + "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" + ], + "type": "string", + "x-ms-enum": { + "name": "ProfileResourceState", + "modelAsString": true + } + }, + "identity": { + "description": "Managed service identity.", + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string" + }, + "frontDoorId": { + "readOnly": true, + "type": "string", + "description": "The Id of the frontdoor." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." + }, + "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 + } + } + }, + "ManagedServiceIdentity": { + "description": "Managed service identity.", + "type": "object", + "properties": { + "type": { + "description": "Type of managed service identity.", + "enum": [ + "SystemAssigned", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } + }, + "tenantId": { + "description": "Tenant of managed service identity.", + "type": "string", + "readOnly": true + }, + "principalId": { + "description": "Principal Id of managed service identity.", + "type": "string", + "readOnly": true + } + } + }, + "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" + } + } + }, + "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" + } + }, + "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" + } + }, + "customDomains": { + "description": "The custom domains under the endpoint.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CustomDomain" + } + }, + "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" + } + } + }, + "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" + } + }, + "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" + } + }, + "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" + } + } + } + }, + "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" + } + }, + "actions": { + "description": "A list of actions that are executed when all the conditions of a rule are satisfied.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleAction" + } + } + } + }, + "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" + ] + } + } + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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", + "format": "duration" + } + } + }, + "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" + }, + "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" + } + } + }, + "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" + } + } + } + }, + "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." + } + } + }, + "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 Custom Https 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": { + "readOnly": true, + "description": "Provisioning status of the custom domain.", + "type": "string" + } + } + }, + "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" + }, + "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." + }, + "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" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + }, + "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" + }, + "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" + } + }, + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "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" + } + }, + "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" + } + }, + "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" + } + } + } + }, + "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" + } + }, + "ipv6Addresses": { + "description": "The list of ip v6 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + } + } + } + }, + "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" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "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 2021-06-01." + }, + "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/stable/2021-06-01/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..27e15be59b4f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/cdnwebapplicationfirewall.json @@ -0,0 +1,937 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-06-01", + "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" + } + }, + "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" + } + } + } + }, + "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" + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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" + } + } + } + }, + "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 disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "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" + }, + "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" + }, + "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 2021-06-01." + }, + "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/stable/2021-06-01/examples/AFDCustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Create.json new file mode 100644 index 000000000000..fec9f5469a9a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Create.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Delete.json new file mode 100644 index 000000000000..605861ac4f00 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Get.json new file mode 100644 index 000000000000..b18098590b1a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "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/stable/2021-06-01/examples/AFDCustomDomains_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_ListByProfile.json new file mode 100644 index 000000000000..6a8548bd1329 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_ListByProfile.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "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/stable/2021-06-01/examples/AFDCustomDomains_RefreshValidationToken.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_RefreshValidationToken.json new file mode 100644 index 000000000000..647566beb1e7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_RefreshValidationToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Update.json new file mode 100644 index 000000000000..4dcff586a72d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDCustomDomains_Update.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/mysecert" + } + }, + "azureDnsZone": { + "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=2021-06-01" + }, + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/domains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/Profiles/CustomDomains", + "properties": { + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/mysecert" + } + }, + "azureDnsZone": { + "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/stable/2021-06-01/examples/AFDEndpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Create.json new file mode 100644 index 000000000000..460c137c2e9e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Create.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "tags": {}, + "location": "CentralUs", + "properties": { + "originResponseTimeoutSeconds": 30, + "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": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdEndpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdEndpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdEndpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdEndpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Delete.json new file mode 100644 index 000000000000..33ee6ed1a5b3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Get.json new file mode 100644 index 000000000000..d91eb0c48237 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "Succeeded" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListByProfile.json new file mode 100644 index 000000000000..2a391cfe47e2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListByProfile.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListResourceUsage.json new file mode 100644 index 000000000000..687b8d47ebfd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/AFDEndpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_PurgeContent.json new file mode 100644 index 000000000000..1228bbec6f64 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_PurgeContent.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contents": { + "contentPaths": [ + "/folder1" + ], + "domains": [ + "endpoint1.azureedge.net" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Update.json new file mode 100644 index 000000000000..a1df44524d3e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_Update.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": {}, + "properties": { + "originResponseTimeoutSeconds": 30, + "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": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "InProgress" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originResponseTimeoutSeconds": 30, + "enabledState": "Enabled", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..6e6f1b99373a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDEndpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/AFDOriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Create.json new file mode 100644 index 000000000000..915140606596 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Create.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Delete.json new file mode 100644 index 000000000000..c39c88256fb8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Get.json new file mode 100644 index 000000000000..2f6bc37113a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListByProfile.json new file mode 100644 index 000000000000..26b6125e3df9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListByProfile.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListResourceUsage.json new file mode 100644 index 000000000000..2155aa448a8f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/AFDOriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Update.json new file mode 100644 index 000000000000..30364403f4b0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOriginGroups_Update.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "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=2021-06-01" + }, + "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 + }, + "responseBasedAfdOriginErrorDetectionSettings": null, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Create.json new file mode 100644 index 000000000000..24c031998381 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Create.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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" + } + } + }, + "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" + } + } + }, + "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": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Delete.json new file mode 100644 index 000000000000..44a3eec5f25f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originName": "origin1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Get.json new file mode 100644 index 000000000000..e50e45bf1d3a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_ListByOriginGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_ListByOriginGroup.json new file mode 100644 index 000000000000..dfcd1528945d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_ListByOriginGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Update.json new file mode 100644 index 000000000000..9047c9dd9b2c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDOrigins_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "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" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_CheckHostNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_CheckHostNameAvailability.json new file mode 100644 index 000000000000..d5a890450258 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_CheckHostNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/AFDProfiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_ListResourceUsage.json new file mode 100644 index 000000000000..9a4b82851f57 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/AFDProfiles_ListResourceUsage.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..5b43b387f51d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..cec7b2d45a78 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..626066448478 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..4be68bae996c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=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 + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..432fdf4d7326 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "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/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..ade14eec68ad --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": {}, + "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": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..994ede67a5c0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": {}, + "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": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..d0f00cedfade --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..c0d5f11dd988 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..470ea5247e2b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2021-06-01" + }, + "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/stable/2021-06-01/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Create.json new file mode 100644 index 000000000000..964fde5e3ae4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Create.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..33ee6ed1a5b3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Get.json new file mode 100644 index 000000000000..83d90364332e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Get.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..cab27074d625 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListByProfile.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..77e46566b9a2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..39174f0effdd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..39174f0effdd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Start.json new file mode 100644 index 000000000000..d18194231b25 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Start.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..a86a68960bec --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Stop.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Update.json new file mode 100644 index 000000000000..9a12c7af8526 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_Update.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..6e6f1b99373a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsLocations.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsLocations.json new file mode 100644 index 000000000000..9fe61911c58c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsLocations.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsMetrics.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsMetrics.json new file mode 100644 index 000000000000..2f7af8287995 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsMetrics.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsRankings.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsRankings.json new file mode 100644 index 000000000000..beb7cb9c9890 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsRankings.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsResources.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsResources.json new file mode 100644 index 000000000000..d2b7b958f060 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetLogAnalyticsResources.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json new file mode 100644 index 000000000000..6e0c670ce914 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsRankings.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsRankings.json new file mode 100644 index 000000000000..451687113b62 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/LogAnalytics_GetWafLogAnalyticsRankings.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Operations_List.json new file mode 100644 index 000000000000..266748cc6dbe --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2021-06-01" + }, + "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/stable/2021-06-01/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Create.json new file mode 100644 index 000000000000..814f0d275f47 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Create.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Delete.json new file mode 100644 index 000000000000..8f2cf73be585 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Get.json new file mode 100644 index 000000000000..9aba116f53ca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/OriginGroups_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_ListByEndpoint.json new file mode 100644 index 000000000000..eff7b88147ed --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_ListByEndpoint.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/OriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Update.json new file mode 100644 index 000000000000..312f0f53b8c7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/OriginGroups_Update.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Create.json new file mode 100644 index 000000000000..d5116a270b93 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Create.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Delete.json new file mode 100644 index 000000000000..00c2fbb4498f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "origin1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Get.json new file mode 100644 index 000000000000..50c67fe05d0a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..ae5c776d260a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_ListByEndpoint.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Update.json new file mode 100644 index 000000000000..5dffaab51890 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Origins_Update.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Create.json new file mode 100644 index 000000000000..385a94fecee1 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "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": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "201": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Delete.json new file mode 100644 index 000000000000..8770c2105cf5 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..823ec5db74b7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Get.json new file mode 100644 index 000000000000..68fd69fe199c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_List.json new file mode 100644 index 000000000000..6166d158d908 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..91e119850997 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..61a4797a5d37 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..faed4cec5945 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Update.json new file mode 100644 index 000000000000..57fa380ab7d5 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Profiles_Update.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..616edbaf564f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Create.json new file mode 100644 index 000000000000..6ce3417c59b2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Create.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Routes_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Delete.json new file mode 100644 index 000000000000..b860cd0ad5ee --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Get.json new file mode 100644 index 000000000000..ccf8db190729 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "Succeeded" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_ListByEndpoint.json new file mode 100644 index 000000000000..f2497dfb5726 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_ListByEndpoint.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Update.json new file mode 100644 index 000000000000..57d3dae7b0b4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Routes_Update.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/RuleSets_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Create.json new file mode 100644 index 000000000000..c92264e4662d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Create.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/RuleSets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Delete.json new file mode 100644 index 000000000000..9bb53152473c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Get.json new file mode 100644 index 000000000000..d09f1be3f2ca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/RuleSets_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListByProfile.json new file mode 100644 index 000000000000..6ea9fb61183a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListByProfile.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/RuleSets_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListResourceUsage.json new file mode 100644 index 000000000000..523e9a568fcb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/RuleSets_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Rules_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Create.json new file mode 100644 index 000000000000..08ce135a26b3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Create.json @@ -0,0 +1,143 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + }, + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + }, + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Delete.json new file mode 100644 index 000000000000..f835199a8093 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1", + "ruleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Get.json new file mode 100644 index 000000000000..48026509ca10 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_ListByRuleSet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_ListByRuleSet.json new file mode 100644 index 000000000000..4e6993b32ba0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_ListByRuleSet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Update.json new file mode 100644 index 000000000000..5174f8bb9e41 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Rules_Update.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "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 + } + } + ], + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Create.json new file mode 100644 index 000000000000..e29fe09c3f5f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Create.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Secrets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Delete.json new file mode 100644 index 000000000000..6e83d66567ac --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "secretName": "secret1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Get.json new file mode 100644 index 000000000000..637ede863867 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Secrets_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_ListByProfile.json new file mode 100644 index 000000000000..9cf856a0f160 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Secrets_ListByProfile.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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": "InProgress" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Create.json new file mode 100644 index 000000000000..37239c181c3f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Create.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "Succeeded", + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Creating" + } + } + }, + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Delete.json new file mode 100644 index 000000000000..769c18853ae0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Get.json new file mode 100644 index 000000000000..a170fd150955 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "Succeeded", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_ListByProfile.json new file mode 100644 index 000000000000..048f562d1227 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_ListByProfile.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "Succeeded", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Patch.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Patch.json new file mode 100644 index 000000000000..49d4564ade9b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/SecurityPolicies_Patch.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1", + "securityPolicyProperties": { + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "Succeeded", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "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/afddomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afddomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ValidateProbe.json new file mode 100644 index 000000000000..9ba1a46875e5 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/Validate_Secret.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Validate_Secret.json new file mode 100644 index 000000000000..f6c4a78fda78 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/Validate_Secret.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..b90c991eef76 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..7a204e64cba8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..a64f60d02b31 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPatchPolicy.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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=2021-06-01" + }, + "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/stable/2021-06-01/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..2e906a6624cd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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/stable/2021-06-01/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..2f1cca764d3d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..a6510d0e8d44 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2021-06-01/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "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" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index 9ddb40ba8171..2012bcf2c7e1 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -1,13 +1,13 @@ # Cdn - + > see https://aka.ms/autorest This is the AutoRest configuration file for Cdn. +--- +## Getting Started ---- -## Getting Started To build the SDK for Cdn, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,22 +15,33 @@ To build the SDK for Cdn, simply [Install AutoRest](https://aka.ms/autorest/inst To see additional help and options, run: > `autorest --help` + --- ## Configuration +### Basic Information - -### Basic Information These are the global settings for the Cdn API. ``` yaml title: CdnManagementClient description: Cdn Management Client openapi-type: arm -tag: package-2020-09 +tag: package-2021-06 ``` + +### Tag: package-2021-06 + +These settings apply only when `--tag=package-2021-06` is specified on the command line. + +```yaml $(tag) == 'package-2021-06' +input-file: + - Microsoft.Cdn/stable/2021-06-01/afdx.json + - Microsoft.Cdn/stable/2021-06-01/cdn.json + - Microsoft.Cdn/stable/2021-06-01/cdnwebapplicationfirewall.json +``` ### Tag: package-2020-09 These settings apply only when `--tag=package-2020-09` is specified on the command line. @@ -112,7 +123,7 @@ These settings apply only when `--tag=package-2017-04` is specified on the comma input-file: - Microsoft.Cdn/stable/2017-04-02/cdn.json ``` - + ### Tag: package-2016-10 These settings apply only when `--tag=package-2016-10` is specified on the command line. @@ -121,7 +132,7 @@ These settings apply only when `--tag=package-2016-10` is specified on the comma input-file: - Microsoft.Cdn/stable/2016-10-02/cdn.json ``` - + ### Tag: package-2016-04 These settings apply only when `--tag=package-2016-04` is specified on the command line. @@ -130,7 +141,7 @@ These settings apply only when `--tag=package-2016-04` is specified on the comma input-file: - Microsoft.Cdn/stable/2016-04-02/cdn.json ``` - + ### Tag: package-2015-06 These settings apply only when `--tag=package-2015-06` is specified on the command line. @@ -140,10 +151,9 @@ input-file: - Microsoft.Cdn/stable/2015-06-01/cdn.json ``` - --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -163,8 +173,7 @@ swagger-to-sdk: - repo: azure-resource-manager-schemas ``` - -## C# +## C# See configuration in [readme.csharp.md](./readme.csharp.md) @@ -187,6 +196,3 @@ See configuration in [readme.node.md](./readme.node.md) ## Ruby See configuration in [readme.ruby.md](./readme.ruby.md) - - -